DTM-1237

2 downloads 0 Views 233KB Size Report
design methods based on fundamental mechanics, such as developing design rules for ..... In this way, the rapid plan generator can be given a robot topology ... can be developed without precise knowledge of the robot's plan. This hypothesis ...
Proceedings of The 1996 ASME Design Engineering Technical Conferences and Computers in Engineering Conference August 18-22, 1996, Irvine, California

96-DETC/DTM-1237 ON THE DESIGN OF RAPIDLY DEPLOYABLE FIELD ROBOTIC SYSTEMS Shane Farritor1 Department of Mechanical Engineering Massachusetts Institute of Technology Cambridge, MA, 02139 U.S.A [email protected]

Steven Dubowsky2 Department of Mechanical Engineering Massachusetts Institute of Technology Cambridge, MA, 02139 U.S.A [email protected]

ABSTRACT Long development times and high costs limit the practical use of robots for many important field missions. Here the underlying hypotheses of a modular design approach to producing rapidly deployable, low cost field robotic systems are presented and their validity explored. An inventory of physical modules and software modules are assembled into a field robotic system for a specified task. The proposed design method uses a hierarchical selection process combined with a genetic algorithm to select a robot configuration and action plan for a given task. The method is applied to an inspection task required for the preservation of an historic ship. INTRODUCTION Robots are needed to perform important field tasks. They could remove humans from dangerous situations such as hazardous material clean-up; nuclear site inspection; bomb disposal; space exploration; and infrastructure inspection. Potentially, robots could be cost effective for such applications as highway and bridge inspection or maintenance. Despite their anticipated advantages in field environments, robotic systems are not widely used. In large part, this is due to the long development times and high initial costs for systems that must generally be designed for a specific mission that may not be repeated. Such systems can require years to develop and cost hundreds of thousands of dollars. To be practical for 1. Research Assistant, ASME Student Member 2. Professor, ASME Fellow 3. Research Assistantt

Nathan Rutman3 Department of Mechanical Engineering Massachusetts Institute of Technology Cambridge, MA, 02139 U.S.A

many applications they should be ready in weeks or months and cost only tens of thousands of dollars. Clearly new design approaches are required. A design approach for field robots using modular components has been proposed (Farritor et. al., 1996) . It has the potential to allow field systems to be rapidly and cost effectively designed and fabricated. The method uses an inventory of physical robotic modules such as actuated joints, links, and power units that are assembled in different configurations to perform different tasks. Software action modules are also assembled to produce an execution plan for a given robot assembly and its task. Clearly, using pre-fabricated modules would greatly shorten development times. Also, using an inventory of “standard” modules that could be used for a number of applications would give substantial cost savings. In theory, even a relatively small set of modules can be assembled into a very large number of robot configurations. Some are feasible; some are not. Some maybe truly effective. This paper attempts to show that, for a reasonable task, an effective robot can be constructed from a relatively small inventory. It also addresses the problem of how to assemble the best system for a specified mission from a given inventory of modules with reasonable effort. The design method uses a hierarchical selection process combined with a genetic algorithm search. Throughout this paper the terms robot configuration, robot design, and robot assembly are used interchangeably to describe a field robotic system. First, the proposed modular design approach will be briefly reviewed (Farritor et. al., 1996, Rutman, 1995). Then the

1

Copyright © 1996 by ASME

results of applying this methodology to a case study are discussed. The case study involves designing a system to perform an inspection task on the USS Constitution, an historic ship of the United States Navy. The results of the rapid planner are also briefly presented (Cole, 1995). Using this example some of the characteristics of the methodology are explored. BACKGROUND AND LITERATURE Substantial research on the design of mobile field robotic systems has focused on developing and studying different concepts for mobility such as walking, climbing, and crawling (Hirose, 1993, Krotkov and Simmons 1992, Argaez, 1993, Weisman, 1992). Some studies have attempted to develop design methods based on fundamental mechanics, such as developing design rules for motor selection to avoid actuator saturation and to minimize system power consumption (Madhani and Dubowsky, 1992, Dubowsky et al., 1994). Research in the design of field robotic systems has largely focused on either the development of a specific technology or on a specific “one of a kind” system. Recently, there has been important work in the design of industrial manipulators constructed of modular components. These studies have dealt with the mechanical design (Tesar and Butler, 1989, Cohen et al., 1992), the kinematic modeling (Benhabib et al., 1989, Kelmar and Khosla, 1990), the configuration selection based on computer aided design techniques (Argaez, 1993), and design based on task requirements (Paredis and Khosla, 1993, Kim and Khosla, 1993). The industrial manipulators considered in these studies are quite different from field systems that must be capable of mobility as well as manipulation. The development of techniques to design field robotic systems using modular components has only been recently explored (Farritor et. al., 1996, Rutman, 1995, Cole, 1995). MODULAR DESIGN The key to our approach in the use of modular components for field robotic systems is to apply fundamental engineering principles to reduce the size of the design space in a hierarchical series of structuring and tests (Farritor et. al., 1996, Rutman, 1995). Then a genetic algorithm is applied to perform the final search in a very reduced design space. It should be noted that genetic algorithms can be naturally applied to this problem, as the design problem using finite numbers of modular components is completely consistent with the discrete nature of genetic algorithms. Figure 1 shows, schematically, a relatively small set of modular components. The actual inventory includes multiple modules of the same type (Rutman, 1995). For instance, the inventory may contain three identical power supplies or five identical joint modules. Also, the inventory may contain modules of different sizes, such as large and small power supplies. Combining this small set of modules in different ways permits many topologically diverse robots to be constructed.

Three sample robot assemblies that can be produced from this inventory are shown in Figure 2. These three robot assemblies are a small fraction of the possible assemblies the given inventory can produce. The battery/body

link

rotary joint

wheel

foot

linear joint

gripper

Figure 1. The Module Inventory combinatorial explosion of the number of possible robots precludes analysis of every possible assembly even with high speed engineering workstations. For instance, using an inventory of 30 modules of 12 unique types yields 11 billion assemblies. If the evaluation of each assembly took only 1 millisecond, the computer would require 127 days to exhaustively search for the best assembly (Rutman, 1995). Clearly, evaluating the general performance of each design (say, via detailed computer kinematic and dynamic simulations) would further increase this already excessive figure.

Figure 2. Sample Robot Assemblies The modular design space In important ways, the design of a modular system can be simpler than the design of a conventional system. In modular design, the design space is composed of pre-existing components, therefore all characteristics of the components are known a priori. This is not true in a conventional design problem. Also, in a conventional design problem, the design variables are, in general, continuous, and the number of possible solutions is infinite. A conventional design space is shown schematically in Figure 3a. In this figure, the design’s performance is plotted against two design variables. With modular design, the space is discrete. Solutions can only be composed of the discrete components within the inventory, see Figure 3b. The number of possible solutions in this discrete space grows very rapidly with the number of available modules. For any real problem an exhaustive evaluation of these solutions is out of the question. The key to a practical search lies in

2

Copyright © 1996 by ASME

reducing the design space to a computationally feasible size, as shown schematically in Figure 3c. This reduction is accomplished here with the use of a hierarchical selection process. Perf( α , β )

β α

a) Conventional design Perf(a , b )

Perf(a i , bj )

i

b an

.. an

.

a1

j

bm

m

an

. ..

a1

an

b) Modular design

c) Reduced modular design Figure 3. Various Design Spaces.

The hierarchical selection process This process is based on the observation that simple physically based design rules can eliminate large sections of the design space (Rutman, 1995). For example, a group of unassembled modules, called a kit, that contain no joint modules, as in the group shown in the left branch of Figure 4, can never produce a useful robot. Therefore, this entire branch of solutions can be eliminated from consideration. This filtering process is applied at varying levels of topological complexity, first to modules, then groups of modules (or kits), and finally to assemblies of modules. The selection process is hierarchical because it eliminates entire sub-trees of solutions from further consideration. At each step in the design process there is a rapid combinatorial growth of the number of alternative designs. For example, each kit can be assembled into many possible configurations. Hence, filters at the early stages are very effective in reducing the size of the design space later in the process.

Figure 4. Hierarchical Selection Process The modular design process The modular design procedure's tests and filters exploit the physical nature of the system, their tasks, and their environments. The method achieves effectiveness by recognizing that some of the performance characteristics of these systems are much simpler and computationally efficient to predict than others (Rutman, 1995, Shiller and Dubowsky, 1991) The modular search algorithm applies the simplest tests first to prune the set of all possible designs and quickly converge on a smaller set of candidate assemblies of modular components. Only the successful candidates need to be considered by the later, more computationally intensive tests. For example, if the total weight of a module or kit exceeds the maximum weight constraint, it can be eliminated from further consideration early in the process. Hence things such as the power or dynamic characteristics of all the systems that could be built with these elements do not have to be evaluated later in the process. As shown in Figure 5, the search process begins by applying the module filters to all the available modules in the inventory. These module filters are derived from the task description and eliminate modules from the inventory that do not make sense for the task. If a robot is needed to operate in an explosive environment, all modules that are not qualified for such conditions are removed from the design space. As discussed above, eliminating modules at this early stage greatly reduces the number of assemblies to be evaluated later. With the 30 module inventory of 12 unique types, mentioned earlier, there were 11 billion possible solutions. If three modules are eliminated from this inventory by module filters, the number of assemblies to be evaluated is reduced by a factor of 50 (Rutman, 1995). su b a ss em b l y ru l es a sse m b l y ru le s m o d u le sp a c e

Ta sk Inf o r ma t i o n

m o d u le f il t er s

re d u ce d m o du l e sp a ce

l o w -l e ve l d e sc ri p t io n r o b o t as se m b li e s

k it se l ec t i o n r ul e s

Par t s

a ll ki t s k it f il t er

K it s

r an k ed ki t s

3

h ig h - le v e l d e sc ri p t io n

a sse m b l y f il t er s d i me n si o n al i ty a p p li ca b le f o r ce s st a t ic s ta b i li t y m o b il i ty sp e e d a cc u ra cy c an d i d at e d e si g n s

f ea si b le k i ts k it e v al u at o r

A ssem b lies

g e n et i c al g o ri t h m

a sse m b l y ev a lu a t io n f in a l d e si g n

Copyright © 1996 by ASME

Figure 5. Modular Design Process Structure All possible kits are formed using the remaining modules. In general, many topologically diverse robots can be produced from a single kit. These kits are then filtered and ranked to further reduce the number of assemblies that will be considered. Kit filters eliminate kits that cannot produce useful robots. For example, as mentioned earlier in Figure 4, a kit is eliminated from further consideration because it contains no joint modules. Again, eliminating kits before they are assembled greatly reduces the number of designs to be further evaluated. With the design space substantially reduced, but still large, a genetic algorithm is used to search for the best designs (Goldberg, 1989). The genetic algorithm represents the robot assemblies formed from the kits with a tree structure or chromosome. This representation is shown in Figure 6.

Where pi is a number between 0 and 1 that is an estimate of the performance of the robot in a single test, wi is a weighting factor used to assign the relative importance of the simple test results. Simple tests make estimates of such system performance measures as power consumption, applicable forces, static stability, and mobility. As an example, mobility is estimated based on the average leg length of the robot with respect to the size of steps the robot might need to climb during a task. The implementation of this test in the case study is discussed in section 6. Using the techniques of crossover and mutation a final robot configuration evolves after multiple generations. A full description of genetic algorithms can be found in Goldberg (1989). RAPID ACTION PLAN GENERATION To produce rapidly deployable systems, rapidly generated planning is essential. Here rapidly generated software action plans are assembled from software modules. The modules consist of simple, physically realizable actions. Example action modules are shown schematically in Figure 7.

move body forward Generat ion N

Chro mosome Represent at ion

Generat ion N+1

Figure 6. Genetic Algorithm Representation The genetic algorithm begins with a number of robot assemblies, called a generation. In the case study, discussed below, generations of 40 robots are used. The algorithm combines some attributes from one assembly with those of another, thus creating a new generation of robots. In Figure 6 the limb from one robot is placed on a second robot to produce a third unique robot. This process is called crossover. Robots are chosen for crossover using a fitness function and the well documented genetic algorithm methodology to make "better" robots more likely to appear in the next generation. The algorithm may also add new characteristics that were not present in the previous generation; this process is called mutation (Goldberg, 1989). In the case study discussed below a crossover operation is performed on 60% of the robots in a generation. Mutation is performed on 2% of the robots and approximately 2000 generations are required for convergence. The genetic algorithm uses simple physically based rules, or tests, to produce a fitness value, f, for a given robot configuration. The fitness value is used to compare one assembly to another. It is computed from the objective function: n

f = ∑ w ip i i =1

(1)

move leg 1 forward

move body down Figure 7. Example Action Modules A plan is built from the inventory of software modules by determining the order the basic actions are to be performed to produce a useful action plan. An example of a very simple action plan, or script, is shown in Figure 8. Clearly, action modules can be repeated throughout the plan. To accomplish this a genetic algorithm search and a robot simulation are used. As before filters and simple tests can be applied to reduce the action module inventory. For example, an action module that would require the recharging of batteries from solar panels would be eliminated from genetic algorithm consideration for robots without solar panels. The genetic algorithm searches through possible assemblies of software modules, or scripts. The algorithm uses a set of simulations to assign a fitness score to these scripts, also called action plans. This fitness score is assigned to the script based on the success of the robot in the task. For example, in the case study discussed below, the fitness assigned to a robot plan is high if the final distance of

4

Copyright © 1996 by ASME

the robot from the target position is small. The fitness score is higher for plans that use less time to execute the action plan. While the robot is executing the plan constraints such as actuator saturation, static stability, and limb interference are checked via the simulations. If a robot violates these constraints during execution of the plan, the fitness of the plan is decreased. Initially, a group of scripts, or a generation, is assembled by forming random lists of action modules. These scripts are represented in a chromosome form for the genetic algorithm. This chromosome is simply a list of numbers with each number corresponding to an action module. Each of these random scripts are tested with the simulation and a fitness is assigned to each script. As discussed earlier, scripts with high fitness scores are more likely to be combined, in crossover, with other high scoring scripts to produce a new generation of scripts. Some scripts are randomly changed in the next generation, or mutated, by replacing a randomly selected module in the script with another randomly selected module. In this way, on average, better action plans, in successive generations, will evolve. In this way, the rapid plan generator can be given a robot topology, software inventory, and task description, and can produce a good action plan. leg 1 forward body forward leg 2 forward leg 1 forward body forward leg 2 forward leg 1 forward body forward leg 2 forward

Target

Before execution

Action Plan After execution

Figure 8. Example Action Plan

then perform even better when given a plan optimized specifically for it and the task. If this is not valid, then it says that a "good" robot can not be designed without knowing exactly how it will be used. In fact it is most likely that the "truth" lies somewhere between these two extremes and to achieve the best final design may required some iteration between selecting a design and its action plan. To formally "prove" these assertions would be very difficult, if not impossible. In this study their validity has been considered within the context of an example application, the USS Constitution Inspection Task. A CASE STUDY: AN INSPECTION TASK ON THE USS CONSTITUTION This work was done within the context of the development of field robotic systems to assist in the conservation and preservation of artistic, historical, architectural and archaeological treasures and monuments, with the USS Constitution, also know as Old Ironsides, serving as a demonstration project (Dubowsky et al., 1995, Cole et al., 1994). Old Ironsides is the oldest fully commissioned warship in the world, and a proud symbol of America’s naval history. Inspection of her hull, that is two hundred years old, is important to the ship's preservation. Task definition The mission addressed here is to inspect the area of the hull beneath the ship's ballast, see Figure 9. This area is subject to damp, rot inducing conditions. It is impossible for workers to

THE BASIS OF THE MODULAR DESIGN APPROACH The modular design procedure described above is based on three fundamental hypothesizes. The first is that a module inventory of practical size can provide useful robots for a reasonable range of applications. If an inventory of twenty to thirty component types can produce robots which can be applied to one or two specific tasks, the value of the modular design approach would be called into question. However, if this same inventory can produce robots which can perform a wide range of tasks in one or more application domain then the value of this process becomes clear. The second hypothesis is that computationally simple tests can be used to distinguish between good and bad robot designs for a given tasks. As discussed earlier, the combinatorial explosion of possible robot configurations clearly prohibits the use of complex and computationally expensive tests when distinguishing between good and bad designs. To achieve a computationally viable methodology simple tests need to be able to effectively reduce the design space to a manageable size. Then more complex tests can be applied to this greatly reduced design space. The third hypothesis states that a robot's topological design can be developed without precise knowledge of the robot's plan. This hypothesis basically says that a "good" robot design that performs generic task plans better than other designs will

5

Copyright © 1996 by ASME

completely self contained and be capable of operating for 1 hour without removal for recharging.

St art Point Target Inspect ion Surf aces

Bal last

Sub-ballast access port

Sub-t arget 1

Keels on Ballast

Support

Sist e r Keel Lim berst rake

Sub-t arget 2

Drain Keel

Hul l

Figure 9. Sub-Ballast Inspection Task Cross Sectional View inspect this area except when the ship is in dry-dock and the ballast is removed. To permit more frequent inspection, the use of a small autonomous field robot is being considered. Such a robot would enter the area through the 8" access port. The robot would carry a video camera and sensors designed to detect and measure any rot in the two hundred year old oak of her hull. The sub-ballast area is divided into a series of individual compartments by the large structural members of the hull. While each compartment has a similar structure the specific geometry of each represents a quite different task. The assumed objective was to find the best robot for each compartment using a predetermined inventory of components. In a typical compartment the robot needs to be capable of climbing the 4.5" step into the inspection area and fit through the 8" narrowest path. Figure 10 shows schematically a model of a typical compartment and the inspection task. The "ceiling" of the compartment is not shown in this figure. A typical task might require the robot to move from the start point, shown in Figure 10, to the target while passing through sub-target 1 and sub-target 2. In this way the robot could inspect the critical area of the compartment. It is assumed that the robot should weigh less than 10 lb. to allow easy deployment and should cost less than $1000. This cost assumes that a module inventory has already been designed. The robot should be

Figure 10. Sub-Ballast Inspection Task Model The first step in the design of a system for this environment is to characterize the available module inventory. Table 1 shows the module inventory assumed for this example problem. The Modular Design With the task and inventory defined, the hierarchical selection process uses several module filters in its first step. An example is that all modules must be small enough to fit through the small sub-ballast access port. One module that is eliminated by this module filter is the hydraulic power supply. This power supply module is too large to fit into the inspection area. With the elimination of the hydraulic power supply the filter that requires all actuators to have an appropriate power supply eliminates the two hydraulic joints and the hydraulic gripper. Kit filters are then applied. An example kit filter used in the Constitution task is the maximum robot weight. All kits whose weight exceeded this maximum were eliminated. Table 1: Module Inventory ID# Type Mass Dimension Cost Notes (oz.) (in.) ($) 18 6x3x3 34 5 W-hr 101 Electric 10 limb Power attach points Module 24 10x4x4 60 13.4 W-hr 102 Electric 16 limb Power attach points Module 103 Pneumatic Power Module

6

60

16x8x8

140 100 W-hr 16 limb attach points

Copyright © 1996 by ASME

201 electric 2.5 2.5x1.5x1 20 42 oz-in joint torque 202 electric 2.3 2.25x1x1 50 92 oz-in joint torque 203 pneumatic 21 1.5x4x2 50 200 oz-in joint torque 204 pneumatic 40 2x8x3 70 385 oz-in joint torque 301 connecting .5 1x1x1 5 link 401 electric 1.5 1.5x1x2 30 .6 lbf grip gripper 402 Pneumatic 18 2x2x3 50 6 lbf grip gripper 403 foot .3 .5x1x1 5 The genetic algorithm considers the surviving kits to evolve good robot configurations. The algorithm assigns a fitness to a configuration by making estimates of the robot's performance characteristics. This fitness considers factors including cost, weight, static stability, limb workspace, climbing ability, and balance. Each of these factors uses a simple test to assign a fitness that estimates the robots performance based on "common sense" physics. An example of this is the robot's climbing ability. This is estimated based on the length of the robot's legs, for instance, a robot with 2" legs will not be capable of climbing the required 4.5" step. As an example, Figure 11 shows how leg length is incorporated into the fitness function. In this function the highest fitness is given to leg lengths between lmin and lmax. These parameters are chosen based on the physical requirements of the task. For instance lmin is determined by the maximum step height in a compartment and lmax is half the lowest ceiling height. Robots with legs that are too long are considered more favorable then robots with legs that are too short. A robot with long legs may still be capable of accomplishing the task while a robot whose legs are too short will have no chance. However very long legged robots will have difficulty with ceiling interference. This test is applied to each leg of the robot and the result is averaged to assign a fitness that helps estimate the robots climbing ability. This helps ensure that each leg will be useful by giving the best score to a robot with all leg lengths between lmin and lmax while not placing a bias on the number of legs. It is important to notice no robot leg will receive a fitness score of zero; the fitness falls off exponentially on both sides of the acceptable region. This avoids discontinuity in the fitness function and enhances the convergence of the genetic algorithm (Wallace, 1994).

Pclimbing ability 1

0

l min

l max

leg length

Figure 11. Fitness Function for Leg Length The fitness function contains parameters that are set by the designer such as how quickly the fitness score falls off beyond lmax, as well as the weighting factors when this is added into the total fitness along with the other design functions such as weight, cost, and stability. For this problem four legged robots with one power module and symmetric legs proved to have high fitness. Such a robot is shown in Figure 12. A number of candidate designs

Figure 12. General Form of Resulting Robots that meet the general form of figure 12 were not well distinguished by the simple fitness tests used in the genetic algorithm search. For instance, robots of the form of Figure 12, but differ only in one joint orientation per leg, would receive very similar fitness scores. The genetic algorithm search can be viewed simply as one step in the hierarchical search. After application of the genetic algorithm with simple tests more complicated tests, such as a kinematic simulation, were used for the final selection. Three robot configurations with high fitness based on simple tests are discussed below. Each or these robots fit the general description of Figure 12 and uses a #102 power module, but each differ in leg length due to the use of a different number of link modules. joint #2 02 link #30 1

foot # 403

joint #2 01

a) Robot I

7

Copyright © 1996 by ASME

joint #2 02

link #30 1

joint #2 01 foot # 403

b) Robot II joint #2 02

link #30 1

joint #2 01

these three robots, constructed from a modest, predetermined inventory could successfully perform the required task. The second was to learn if the fitness scores of the simple tests correlated to the quality of the performance given by the simulations. Finally, the simulations were used to study how the designs did using different action plans. In this way, the basic assumptions behind the design method could be evaluated. Power consumption is typical of the performance factors considered by the simulation. Clearly, if two robots are capable of accomplishing the task while satisfying all other constraints, the robot that uses less power is a better design. Power consumption is estimated assuming the actuators are the dominate power consuming elements in the system (Dubowsky et al. 1994). Then the power consumed is proportional to the square of the current drawn. For dc motors this current is proportional to the torque they apply. For the systems considered here it can be shown that the joint torques required to statically support the system dominate any dynamic effects (Dubowsky et al., 1994). When the robot is taking a step and has one leg lifted, calculating the three remaining foot reaction forces is a simple statically determined problem. When all four z

Joint 2 of leg 2 y x

P3

foot # 403

c) Robot III Figure 13. Robot Limb Configurations: The first of these three robots, robot I, with leg configuration shown in Figure 13a), is found to have the highest fitness. This is largely due to the fact that, besides meeting all other requirements, its limb length of 8.75" is within the desired range of 8-9". This range is set by the compartment geometry, two times maximum step height and one half the ceiling height. This configuration receives a genetic algorithm fitness score of 18.1. The second, robot II, with leg configuration shown in Figure 13b), had the second highest genetic algorithm fitness score of 17.4. This limb length of 9.75 falls outside the desired leg length, and it is also penalized by added weight and cost when compared to configuration I. The leg in Figure 13c) is found to give a robot with the lowest fitness of the three configurations discussed. The genetic algorithm search assigns this configuration with a fitness of 17.11. The length of the limbs in this configuration deviate most from the desired length and this limb is heavier and more expensive than the limbs of the first two configurations. Evaluations of Candidate Designs These three robots were studied with computer simulations that considered physical constraints such as limb interference, geometric limitations, static stability, actuator saturation, and power consumption. The first objective was to determine if

k

3

P4

P1

k

4

P2 k

k1 F3

2

F4 F1

F2

Figure 14. Calculation of Reaction Forces legs are in contact with the ground, the problem becomes statically indeterminate. In this case some compliance is assumed at each contact point, as seen in Figure 14. Here it is assumed that the surface is relatively level so slip and tangential forces are not an issue. Clearly the analysis would include a model of the frictional interaction between the feet and the environment in the more general case. In this analysis it is assumed that the elements of the robot are rigid and the configuration of the robot at all instances is known. This compliance, along with the assumption that the robot is a rigid body allows the problem to be solved from static equilibrium. ∑ F z = 0:

F1 + F2 + F3 + F 4 − W = 0

(2)

∑ Mx = 0: − F 1 y 1 + F 2 y 2 − F 3 y 3 + F 4 y 4 = 0

(3)

∑ M y = 0:− F 1x 1 − F 2x 2 + F 3 x3 + F 4x 4 = 0

(4)

{

}

F n = k n d n and P n = x n , y n , z n Where dn is the compression of spring n, W is the weight of the robot, and Pn is defined with respect to the center of mass of the robot in its instantaneous configuration. The geometric constraint that the robot is a rigid body gives a fourth where

8

Copyright © 1996 by ASME

equation relating d1 to d4. For instance if the robot is walking on a flat surface all of the robot's feet must lie in a plane. This constraint is given by Equation 5.

1

4 0

4 0

3 0

2

2 0

3

1 0

0

(5) A ( x 4 − x 1 ) + B( y 4 − y 1 ) + C ( z 4 − z 1 ) = 0 Where A, B, and C are the parameters of a plane defined by the foot positions P1, P2, and P3. This leaves four equations and four unknowns.

z 1

x y 2

P

3

F Figure 15. Calculation of Joint Torques on a Typical Limb With knowledge of the foot reaction forces, the joint torques can then be found. Figure 15 shows a typical limb in the static analysis. With this limb the torques at the joints are related to these reaction force, F, by:

F   T1  T x  T 2  = [ J( θ 1 , θ 2 , θ 3 ) ] F y F   T 3   z

(6)

Where [T1,T2,T3] is a vector of the joint torques, J is the Jacobian of the limb, and [Fx,Fy,Fz] is a vector of the reaction forces at the foot. As an example, the torque applied by joint two of leg two, the front left leg as shown in Figure 14, is plotted in Figure 16 for robot I as it walks forward on a flat surface. Each cycle represents one step forward. At stage (1) the front right leg is advanced, at (2) the front left leg is advanced, at (3) the rear right leg is advanced and at (4) the real left leg is advanced. Finally, at stage (0) the body is moved forward. It can be seen that under these assumptions the torque in joint two of leg two is zero as this leg is being moved forward.

0

2

4

6 T im e

8

1 0

1 2

1 4

( s e c o n d s )

Figure 16. Torque in Joint 2 of Leg 2 during Simple Robot Walking The calculation of joint torques is then used to estimate power consumption. This information is also used to ensure that the required actuator torques do not exceed their saturation limits. Robot action plan In the results presented below a generic action plan was used to provide the limb commands for the robot during its task. First each robot design was tested using the same generic action plan. This generic action plan has the robot walk by simply moving each leg forward one at a time. The robot then moves its body forward the same distance. In this way the robot walks. The robot can also rotates its body to turn to the left or the right and then move each leg back to the nominal position with respect to the body. In this way the robot turns. It approaches its target position by repeated cycles of forward motions and turns. These cycles make up the generic action plan. The results of the three case study robots, each using the same generic action plan to perform the task, are shown in Table 2. Table 2. Initial Simulation Results % Result Power Design Consumed actuator Search saturation (watts) Fitness --------------Robot 18.1 Unable to I complete task due to kinematic constraints Robot 17.4 Successful 2621.86 95 II Robot 17.1 Successful 3723.71 95 III These results suggest that the modular design process has not selected the best configuration for the task. Robot I, the highest scoring robot in the design search, cannot perform the task using this action plan. This is because robot I's legs are too short to step into the inspection area using the plan. However, robot II, which scores lower than robot I in the search, performs the task. Robot III is also capable of completing the task, however it consumes almost one and a half times more power than does robot II. Then individual action plans were developed for each of the three robot designs using the genetic algorithm procedure discussed in section 4. The algorithm searched for a plan that moves the robot to the target while meeting all the kinematic, interference, saturation, and stability constraints. If any constraints are violated, execution of the plan is ended and a

9

Copyright © 1996 by ASME

fitness score is assigned using the genetic algorithm objective function, shown in equation 7. f = w dis tan ce (d total − d) − w time (n) + w t arg et (δ t arg et )

(7) Equation 7 considers how close the robot came to the target, the number of action modules required, and if the target is reached. The weights wdistance, wtime, and wtarget assign relative importance to each of the terms, dtotal is the distance from the start point to the target, d is the distance from the robot's location at the end of execution to the target, n is the number of action modules in the action plan used, and Ótarget is equal to 1 if the robot ends within a given threshold distance to the target and is 0 if the robot does not reach the target. In short, an action plan scores well if the robot moves to the target using few action modules. Figure 17 shows the best fitness score of any script in each generation. The system performance evolves and improves. In the first 180 generations the action plans are only able to move the robot forward to the step found between the start point and sub-target 1, as seen in Figure 10. This represents a fairly steady increase in fitness. From generations around 180 to 380 the algorithm is searching for a set of action modules that will allow the robot to move down the step. A plateau in fitness scores is seen. Once this is accomplished, action modules are found that allow the robot to move to the target. At a generation near number 650, the robot moves within the target threshold and a fifty point jump (wdistance=50) is seen in fitness. This search required approximately 50 minutes on a Sparc Classic Sun workstation. This time is quite acceptable for an off line planning methodology. 2 20

Fitness

2 00 1 80 1 60 1 40 1 20 1 00 80 0

2 00

4 00

6 00

8 00

1 00 0

1 20 0

1 40 0

Generation Number

Figure 17. Convergence of the Genetic Algorithm This genetic algorithm search was applied to each of the three robot designs. The results for the first third of the task, i.e. the movement from the start position to sub-target 1 as shown in Figure 10, are summerized in Table 3. These results show, as one would expect, that the performance of a given robot depends on the action plan used to perform the task. This is most clearly seen in the case of Robot I. It was unable to perform the task using the simple generic action plan, however the genetic algorithm search plan allowed it to complete the task. In the cases of robot II and III slight reductions in power consumption were achieved using the genetic algorithm improved action plans. Table 3. Performance of GA Action Plans

Robot I

Desig n Score 18.1

Plan Used

Result

Simple Plan

Unable to complete task due to kinematic constraints Successful

Power Consumed (watts) --------

GA 647 Plan Robot 17.4 Simple Successful 744 II Plan GA Successful 730 Plan Robot 17.1 Simple Successful 1119 III Plan GA Successful 1037 Plan These results show that the robot selected by the design search routine, that did not consider the precise way the robot would be commanded, performed the best when following a plan selected specifically for this design. IMPLICATIONS OF RESULTS OF THE CASE STUDY The results obtained in the above case study, while not rigorous or conclusive, support the validity of the three fundamental assumptions, presented earlier, on which the modular design process is based. First, the results show that for this example a moderately sized inventory of components can produce a useful robot that can perform the task. It is shown that an inventory of eleven module types is able to produce at least three robots that are capable of accomplishing the required inspection task. Second, the study suggests that the simple tests can be used to distinguish between good and bad robot designs. Space limitations did not permit us to present the performance of a number of designs that scored poorly in the simple tests and in simulation also performed very poorly. Even designs that appear to be quite reasonable. In general the relative performance of these robots in the simulation paralleled the ranking of the search based on simple tests. This was even true for the three designs of the case study, particularly when they were commanded by action plans tailored for their configuration. Finally, the results suggest that the design and planning processes can be decoupled, at least for the case study considered here. Without consideration for the action plans for the robots, three robots were suggested. Each of these robots was capable of accomplishing the task with its tailored action plan. It is shown that the design and planning processes must both be considered to get the "best" performance. This is seen most dramatically in the performance of robot I. This robot is unable to perform the task using a straight forward action plan, but performs the best using its optimal plan. However, it does imply that a good design can be identified without specifying exactly how it will be used.

10

Copyright © 1996 by ASME

Again, these results do not prove or disprove any of the assumptions, but they due lend credence to their validity. SUMMARY AND CONCLUSIONS To reduce the cost and development time of field robotic systems a modular design approach has been proposed. In this approach, an inventory of pre-existing hardware and software modules are assembled to quickly produce a system for a given task. Even for a small inventory of parts the number of possible designs, while finite, is very large and increases rapidly as modules are added to the inventory. A hierarchical selection framework for searching this large space has been established. It prunes the design space to a manageable size. This reduced space is then searched for the higher ranking designs using a genetic algorithm. An action plan is also produced from software modules using a genetic algorithm. A case study of an inspection task for the USS Constitution has been considered. The results of this study tend to support the basic assumptions that first, a moderately sized inventory of robot modules can produce useful designs for a reasonable class of problems; second, that simple design rules can be used to distinguish between good and bad robot designs; finally that a robot can be designed without knowing exactly how it will be used. This design methodology may have important applications to the design of other types of systems. ACKNOWLEDGMENTS This work is supported, in part, by the National Science Foundation under an Exploratory Research (SGER) Program No. IRI-9320138 and by NASA (Langley Research Center, Automation Branch) under Grant NAG-801. The authors would like to acknowledge the work of Vin Raju in the graphical representation of the simulation. REFERENCES Argaez, D. An Analytical and Experimental Study of the Simultaneous Control of Motion and Force of a Climbing Robot, Masters Thesis, Department of Mechanical Engineering, MIT, Cambridge, MA, May 1993. Benhabib, B. Zak, G. and Lipton, M., “A Generalized Kinematic Modeling Method for Modular Robots,” Journal of Robotic Systems, 1989. vol. 6, no. 5, pp. 545-71. Cohen, R. Lipton, M., Dai, M. and Benhabib, B. “Conceptual Design of a Modular Robot.” Journal of Mechanical Design, Mar 1992. vol. 114, pp. 117-25. Cole, J. Rapid Generation of Motion Plans for Modular Robotic Systems, Masters Thesis, Department of Mechanical Engineering, Massachusetts Institute of Technology, Cambridge, MA, J May, 1995. Cole, J., Dubowsky, S., Rutman, N. and Sunada, C. "The Application of Advanced Robotics and Sensor Technologies to the Preservation of the USS Constitution" Proceedings of the Conference on the Technical Aspects of Maintaining,

Repairing and Preserving Historically Significant Ships, September 12-14, 1994, Boston, MA. Dubowsky, S., Cole, J., Rutman, N., and Sunada, C. "Mobile Autonomous Robotics Systems for Unstructured Environments - With Applications to the USS Constitution" Proceedings of the NSF Design and Manufacturing Grantees Conference, San Diego, Ca, January 4-6, 1995. Dubowsky, S., Moore, C. and Sunada, C., “The Power Map Method for Designing Field Robotic Systems,” Proceedings of the ANS 6th Topical Meeting on Robotics and Remote Systems, Monterey, CA, February, 1994. Farritor, S., Dubowsky, S., Rutman, N., Cole, J., "A Systems Level Modular Design Approach to Field Robotic Systems," Submitted to IEEE International Conference on Robotic and Automation,1996. Goldberg, D. Genetic Algorithms in Search, Optimization, and Machine Learning. Addision-Wesley, Reading, MA 1989. Hirose, S. Biologically Inspired Robots: Snake like Locomotion and Manipulation. Oxford Scientific Publications, 1993. Rutman, N., Automated design of Modular Field Robots, Masters Thesis, Department of Mechanical Engineering, MIT, Cambridge, MA, 1995. Kelmar, L., and Khosla, P. “Automatic Generation of Forward and Inverse Kinematics for a Reconfigurable Modular Manipulator System,” Journal of Robotic Systems, 1990. vol. 7, no. 4, pp. 599-619. Kim, J., and Khosla, P. "Design of Space Shuttle Tile Servicing Robot: an Application of Tasked Based Kinematic Design," Proceedings of the IEEE International Conference on Robotic and Automation, Atlanta, GA, May 1993. vol. 3, pp. 867-74. Krotkov, E. and Simmons, R. "Performance of a Six-Legged Planetary Rover: Power, Positioning, and Autonomous Walking," Proceedings of the 1992 IEEE International Conference on Robotics and Automation, Nice France, 1992. Vol. 1, pp. 169-74. Madhani, A. and Dubowsky, S. “Design and Motion Planning of Multi-Limb Robotic Systems: The Force Workspace Approach,” Proceedings of the 1992 ASME Mechanisms Conference, Scottsdale, AZ, Sept. 13-16, 1992. Paredis, C. and Khosla, P. "Synthesis Methodology for Task Based Reconfiguration of Modular Manipulator Systems," Proceedings of the International Symposium on Robotics Research, Hidden Valley, PA, Oct. 2-5, 1993. Shiller, Z., and Dubowsky, S. "On Computing the Global Time Optimal Motions of Robotic Manipulators in the Presence of Obstacles," IEEE Journal of Robotics and Automation, Dec. 1991. vol. 7, no. 6, pp. 785-97. Tesar, D., and Butler, M. "A Generalized Modular Architecture for Robot Structures," Manufacturing Review, 1989. vol. 2, no 2. Wallace, D., A Probabilistic Specification-based Design Model: applications to design search and environmental computer aided design, Ph.D. thesis, Department of Mechanical Engineering, MIT, Cambridge, MA, 1994

11

Copyright © 1996 by ASME

Weisman, R., “GRI’s Internal Inspection System for Piping Networks,” Proc., 40th Conference on Remote Systems Technology, Vol. 2, 1992, pp 109-15.

12

Copyright © 1996 by ASME