19 AML: A Manufacturing Language R. H. Taylor P. D. Summers J. M. Meyer IBM T. J. Watson Research Center Yorktown Heights, New York 10598 Abstract AML, A Maufacturing Language, was designed to be a well-structured, semantically powerful interactive language for robot programming. In this paper, we identify the de- sign objectives for such a language and give a technical description of AML. Important features are described and illustrated through representative examples of robot appli- cations programming. 1. Introduction One of the most significant developments in the 1980s will be the widespread introduction into indus- try of a new generation of intelligent automation sys- tems, in which industrial robots operate under pro- grammed control of modem digital computers. These systems combine several fundamental capabilities: Manipulation-the ability to move physical ob- jects about the work station Sensing-the ability to obtain information from the physical world through the use of sensors Intelligence-the ability to use information to modify system behavior in preprogrammed ways Data processing-the ability to interact with a data base to keep records, generate reports, and to control activity at the work station The flexibility inherent in this combination offers im- portant advantages over current fixed automation. Positional misalignments can be determined by sen- sing and compensated for by software, thus reducing the requirement for expensive fixtures and high ab- solute accuracy in the robot hardware. Inspection can be integrated into automated manufacturing pro- cesses. Manufacturing data bases can be used to per- mit customization of individual work pieces. Simi- larly, model changes can be accommodated by software, thus permitting capital costs to be spread over many products. Finally, increased standardiza- tion of equipment within a plant eases maintenance and allows more flexible production scheduling. If these advantages are to be readily obtained, however, it must be easy for a user to specify how the functional capabilities of the automation system are to be applied to particular tasks. Consequently, the provision of a suitable programming language and environment is a critical element for any suc- cessful system design. The central role of programmability has long been recognized in university research laboratories (Tay- lor 1976; Lozano-Perez and Winston 1977; Grossman and Taylor 1978; Popplestone, Ambler, and Bellos 1978; Mujtaba and Goldman 1979; Park and Burnett 1979) and has recently received attention in industry as well (Olivetti n.d.; Unimation 1979; Will and Grossman 1980; VanderBrug 1981). For the past 10 years, the Automation Research Project at the IBM research facility in Yorktown Heights, New York, has been developing programmable automation sys- tems (Will and Grossman 1975; Blasgen and Dar- ringer 1977; Evans et al. 1977; Grossman 1977; Lie- berman and Wesley 1977; Taylor 1979; Meyer 1981; Summers and Grossman 1982). This experience led in 1978 to creation of a second-generation research robot system with enhanced functional capabilities and a considerably improved programming interface featuring a new programming language, AML. This system became the prototype for the IBM RS 1 Manufacturing System, which is in use in a number of manufacturing and laboratory sites around the world. In addition, a subset of AML is available on the IBM Personal Computer for programming the IBM 7535 Manufacturing System robot. This paper describes the research version of AML. Although this version of the language is very at JOHNS HOPKINS UNIVERSITY on September 9, 2015 ijr.sagepub.com Downloaded from