壓縮包內(nèi)含有CAD圖紙和說(shuō)明書,均可直接下載獲得文件,所見(jiàn)所得,電腦查看更方便。Q 197216396 或 11970985
Design and simulation of component-based manufacturing machine systems
Josef Adolfsson a, Amos Ng a,*, Petter Olofsgard a, Philip Moore b, Junsheng Pu b, Chi-Biu Wong b
Department of Engineering Science, Centre for Intelligent Automation,
University of Sk€ovde, S-541 28 Sk€ovde, Sweden
Faculty of Computing Sciences and Engineering, Mechatronics Research Group,
De Montfort University, Leicester LE1 9BH, UK
Abstract:
This paper presents the modular machine design environment (MMDE), a software environment
that enables the ‘virtual design/engineering’ ofcomponent-based manufacturingmachine systems. It consists of a suite of highly integrated tools supporting the visualisation,design, programming, verification and evaluation of machine systems built from mechanical, lectronic and software components/modules in a virtual environment. Using three-dimensional 3-D) graphical simulation with a number of add-on tools, MMDE supports visualisation, esign, simulation and verification of both the physical model and control logic for esign and/or re-configuring machine systems to satisfy new or changed application/customer equirements before any real implementation is made. System design, implementation techniques, and evaluation of MMDE in a real industrial test case are covered in detail.
_ 2002 Published by Elsevier Science Ltd.
Keywords:
Modular machine design and control; Virtual machine components; 3-D graphical simulation;
IEC-1131-3
1. Introduction
Agility has been recognised as one of the most important attributes for manufacturing machine systems to satisfy the needs of global competitive markets. By agility, it means that manufacturing machine systems are able to respond rapidly and cost effectively to production changes both in terms of volume and variety. To accomplish such a requirement, re-configurability, re-usability and extendibility are characteristics, which are highly desirable to have embodied from an early phase in the design and implementation process of the manufacturing machine systems. One prevalent approach to achieve enhanced re-configurability of machine systems is to adopt modular design and the use of standard components [1,2], so that gility is at least in-part realised by utilising existing components, simply by re-using and re-configuring machine elements, in response to new or changed application/ customer requirements. Numerous attempts, both from industry and academic sources have tried to address various aspects and levels of modular manufacturing machine system design and operation, from structural components, sensing and actuation components to control hardware and software. On one side, the endeavour
of standardisation bodies is to address the ‘open’ systems issues, allowing components from different vendors to be inter-operable and inter-changeable. At the same time, the emergence of distributed control technology makes it possible to distribute control and intelligence down to the device level [3]. It can be envisaged that such standards and advanced machine components with intelligent control capability could provide the basic building blocks of next-generation machine systems [4].
Nevertheless, until and when the number and variety of such components become widespread, it is critically important to have the supporting tools for machine builders to select, evaluate, aggregate and manage these building blocks in a systematic and flexible manner. Such tools should facilitate engineers to design a system conceptually, to analyse and prove the functionality of the design in a virtual environment
(information/software) and then generate the real machine system (e.g. control system configuration, control logic code, etc.) smoothly. 3-D graphical modelling and simulation tools have proven to be highly effective for rapid prototyping, visualisation and testing ‘what-if’ scenarios in the manufacturing engineering domain [5]. The design of large scale manufacturing systems often utilises various discrete-event simulation tools for layout design, bottleneck analysis,
throughput analysis, etc. [6]. Whereas, continuous simulation tools, such as computer aided robotic systems [7] are often utilised for the design, analysis and programming of individual workstations. Such systems provide facilities for evaluating different automation designs and equipment capabilities, in particular industrial robot based applications. Moreover, the same environment can be used for off-line programming the real equipment via code generation, thereby further shortening the machine delivery time. It can be seen that realisation of a virtual design/engineering environment for manufacturing machine systems can be achieved with existing or
emerging computing platforms and software tools. However, when applying 3-D graphical simulation to the design of a component-based machine system, one critical issue is to ensure an effective and viable methodology for building machines from their associated components so that the tools emerging can be exploited to their best effect in the machine system design process. Such methods should allow the transfer of the design between the virtual environment and the real environment seamlessly. Other than the graphical visualisation of the machine’s physical com- ponents, simulation and verification of the control and application logic in a virtual
environment is also a viable aspect. The accompanying tools implemented should be highly integrated and supported by a component repository so that existing virtual components and company knowledge can be re-used and managed effectively.
This paper presents the modular machine design environment (MMDE), a ‘virtual design/engineering’ software environment that enables the visualisation, verification and evaluation of the physical design and control logic of component-based manufacturing machine systems. It is an integral part of the VIR-ENG (see Section 2) research project, which addresses the research issues identified above. Within the VIR-ENG research programme, the objective of the MMDE work-package was to
develop an environment that facilitates machine design engineers to design a system conceptually, to analyse and prove the functionality, to visualise and test ‘what-if’ scenarios in the machine design process, using advanced three-dimensional (3-D) graphical modelling and simulation technology. Delmia simulation products, Quest[8] and IGRIP/Envision [9], were adopted in MMDE to make use of the features of both discrete-event simulation and continuous simulation respectively. Furthermore, these packages represent advanced simulation technology widely used in both industry and academia. The objective in creating MMDE was to utilise an underlying components-based paradigm in the realisation of a modular machine design tool-set. To facilitate the integration of Quest and IGRIP/Envision within such a components- based environment, a generic software model for creating virtual components in these packages have been devised in MMDE. Software tools that build on this model have also been developed using the services offered by the simulation packages. Such a generic model and its corresponding tool-set integrated with Quest and IGRIP/Envision will also be discussed.This paper is organised as follows: Section 2 gives a brief overview of the VIRENG project. MMDE is presented in Section 3. The generic model for building virtual components is discussed in Section 4. The implementation techniques applied
for MMDE are described in Section 5. Section 6 briefly introduces the VIR-ENG demonstrator, an assembly workcell that demonstrates the VIR-ENG concepts and tool-set.
2. VIR-ENG––a brief overview
MMDE was a major facet of the ESPRIT/IST research project“Integrated design, simulation and distributed control of agile modular manufacturing machine systems“ (VIR-ENG). The project aim was to develop highly integrated design, simulation and distributed control environments for building agile modular manufacturing machine systems which offer the inherent capacity to allow rapid response to product model changes and feature variants [10]. Four work-packages and their associated tasks were identified to facilitate the project. Fig. 1 depicts these packages and their inter-relationships. Among these work-packages, MMDE and DCSE are the major environments, which support different facets and activities in the machine system life cycle. WhileMMDE provides the tools to support all facets of the design process using graphical simulation, DCSE is designed to provide an integrated environment to facilitate distributed control system design and its operation. Uniquely, DCSE is partitioned into three main elements, namely, the control system design environment (CSDE), the component design environment (CDE) and the distributed run-time environment (DRE). MMDE and DCSE are highly integrated, whereby the physical layout, kinematics, mechanical constraints and sensing scheme of the virtual machine system designed and validated in MMDE are transferred to DCSE as the blueprint for the further development and deployment of the control systems. The control logic created in MMDE, which is used to drive the simulation, is also transferred to DCSE for developing the machine and application code of the real machine systems. Furthermore, run-time data, once available from the real machine system, is gathered from DCSE and can be used to validate and calibrate the virtual model developed in MMDE. This serves as the ‘‘feedback’’ in the machine design process. In order to facilitate the seamless integration between MMDE and DCSE, the underlying infrastructure & integration services (IIS) is needed to provide the services for these two environments to exchange design models, information and data. All VIRENG packages are designed and implemented to support and encourage re-usability of machine components. In particular, IIS comprises a component library, which serves as a central repository for components designed in the VIR-ENG environments
3. Modular machine design environment From the viewpoint of end users, MMDE consists of two major environments: (1) the design and simulation environment and (2) the programming environment. The design and simulation environment in MMDE is where the virtual model of the machine system is produced, tested and evaluated. The programming environment of MMDE provides the programming interface that allows users to define the control logic for driving the virtual machine system. As one of the unique features introduced by VIR-ENG, the control logic to drive the simulation entities is described using programming languages defined in IEC-1131-3 [11]. The same control logic, represented using IEC-1131-3 languages, once ‘proven’ on the virtual machine is also used with the real machine.
3.1. Using IEC-1131-3 standard languages Nowadays, most commercial simulation software packages provide one or several programming interfaces (largely language-based) for design/simulation engineers to develop programs to control and process the simulation models. Whilst these languages are generally powerful and flexible to control every aspect of the simulation models, however, users have to be proficient with these languages in order to program the simulation to resemble real-world behaviour. At the same time, the programming models of these languages usually contrasted greatly with real machine programming. Off-line program generation can be very useful in translating the simulation program to machine control code. However, such features are only generally available for conventional machinery such as industrial robots and CNC machines. Off-line programming for special purpose automation equipment that is built from components such as sensors, actuators and motion controllers, etc., is not available. Current practice in the main on such systems is that no use is made of simulation tools and the control logic is developed ‘on the machine system’ once built. However, even where graphical simulation has been applied during the design process the control engineers have to re-implement the control logic described in a simulation model when developing the software for the real control system. Misinterpretation and sub-optimal implementation is likely to be the result of such a discontinuity in the process and many of the inherent benefits from the use of simulation are lost [12]. Furthermore, the accelerating trend towards ‘mass customisation’ and rapid product introduction is dictating the need for ever-more flexible machine systems/automation solutions produced in much shorter lead times with proven design concepts. On the other hand, it has been recognised that complexity in the design process is increased from the need to use simulation languages to describe application-related logic. For example, application logic that determines the part routing, co-ordination of different components, exception handling, etc. As a matter of fact, the logic, as well as the corresponding simulation code to control a primitive machine component is usually fairly simple and straightforward. For example, actuating and retracting a pneumatic cylinder, lifting up and down an elevator, robot grippers to grasp andrelease a part, etc. In all these examples, the machine components are driven sequentially by Boolean logic, which can be represented by very simple state transition abstractions. However, complexity in the logic increases enormously when controlling a workcell which is built from several workstations which in turn are the aggregates of tens or even hundreds of such primitive components. Based on these important observations, it is believed that it is possible to extract the complex highlevel logic out from the simulation code and delegated this to an external control logic execution engine. The essential simulation code used to drive the ‘primitive’ simulation entities can then be much simplified Based on the above observations and concepts, the use of a standard industrial programming language, IEC-1131-3, to program and control simulation models, is adopted by MMDE. When compared with other related research, MMDE is unique in that IEC-1131-3 is not only used as the language for users to program the simulation model but also serves as the control logic specification for the further development of the control system design and deployment in DCSE (see Section 2). To accomplish the notion of using IEC-1131-3 to program the simulation logic, one could take two different approaches: (1) to develop a translator to convert IEC- 1131-3 programs into the native simulation language that drives the simulation entities; or (2) directly use the IEC-1131-3 execution program to control the simulation. The second approach requires the development of a communication medium that enables data to be exchanged. Whilst the first approach sounds straightforward, it has a number of disadvantages in terms of concepts and implementation that prohibited its use. While IEC-1131-3 consists of a set of standard languages, simulation languages are not standardised. Implementing individual translators for each simulation package would be tedious and error prone. Furthermore, there are inevitably many discrepancies between the software models of graphical simulation software and the physical control system. This makes automatic translation extremely difficult if not totally infeasible. On the other hand, direct control by exchanging data enables us to facilitate the principle of encapsulation and information hiding. Such data generally represent the control signals and device status but also MMDE-specific data (e.g. simulation clock time, etc.) are also included. Internal information and procedures of the IEC-1131-3 execution program and the simulation software are separated from each other. Since
both environments ‘see’ only the data shared. Once the format of data exchanged has been defined, it gives the flexibility to continue the development in each side independently. In other words, it facilitates the loose coupling between the control logic execution engine and the simulation software package, so that it is possible to control the simulation model using different kinds of control logic execution programs.
4. A generic model for creating virtual component controllers
In contrast to the physical world in which real components could be driven by almost an infinite form of media, all ‘kinematic movement’ in the virtual world involves only a set of function calls that updates the graphical entities and their corresponding data attributes. Therefore, it is believed that the essential simulation code used to drive a simulation entity can be, to a large extent, generalised into a set of parameterised routines which, can be predefined and saved in form of code templates or libraries, provided that all high-level control logic is extracted from the simulation code and delegated to an external control logic execution engine. In MMDE, such preconditions have been fulfilled by having the IEC-1131-3 engine to execute the coordination logic. Despite the idea of having such parameterised routines being conceptually sound, considerable effort would be required to develop such routines for every simulation package used, which in principle are used to drive the same component in the virtual world. Therefore, extensive study and testing has been undertaken on how to generalize the programming models of different simulation packages in order to produce a single generic model. Firstly, the model is devised to be platform-independent. It allows implementation using different simulation software packages and utilizing their own simulation language features. Secondly, as the model provides a systematic and coherent way of programming virtual components, it should lead to a process, which is beneficial to both MMDE developers and final users. To us, the MMDE developers, it provides the guidelines for developing the parameterised simulation routines and the supporting graphical user-interface (GUI) tools. From the user perspective, this process opens the possibility of automatic or semi-automatic simulation code generation. They can select from the list of predefined templates, input corresponding parameters and then generate the virtual component controllers required according to the guidelines derived from the generic model. Fig. 3 gives a schematic illustration of how a virtual component controller is developed, starting with the generic model used by the MMDE developers. It is worth noting that the format of the templates and virtual component controllers during various phases are intentionally left unspecified because these must be platform-dependent. They may exist in a form of Windows’ dynamic linked library or text file containing source simulation code.
4.2.3. State transition table The term state transition table (STT) is used to describe the data structure that relates the internal states, transitions and actions of a simulation entity. It is important to note that every process (and non-process) entity may contain one and only one STT. Each STT may only be associated with the simulation entity that owns it. The implication of such a structural arrangement is that a simulation entity cannot access the state of another entity for a state transition in order to prevent any hidden co-ordination logic between virtual components. At the same time, the STT is concealed from external clients, implying that only the simulation entity can change its own state. This is based on observations described early in this section. All highlevel and co-ordination logic must be programmed in the IEC-1131-3-based programming environment, and thereby can be verified and tested with the external IEC-1131-3 control logic engine.
4.2.4. Virtual I/O connection When running the simulation, each simulation entity rea