Rimvall, C M, Jobling, C P. Computer-Aided Control Systems Design The Electrical Engineering Handbook Ed. Richard C. Dorf Boca raton crc Press llc. 2000
Rimvall, C.M, Jobling, C.P. “Computer-Aided Control Systems Design” The Electrical Engineering Handbook Ed. Richard C. Dorf Boca Raton: CRC Press LLC, 2000
112 Computer-Aided Control Systems design Introduction A Brief History of CACSD Technological Developments. User Interfaces. CACSD Packages of Note 112. 3 The State of the Art in CACSD Consolidation of CACSD. A critique of Matrix Environments for C. Magnus Rimvall CACSD·“ Open Systems"· Other Desirable Features 112.4 CACSD Block-Diagram Tools Christopher P Jobling Basic Block-Diagram System Representations. Architectures of Block-Diagram Syster pen-Architectures of Block-Diagram University of wales 112.1 Introduction The use of computers in the design of control systems has a long and fairly distinguished history. It begins before the dawn of the modern information age with the analog computing devices that were used to create tables of ballistic data for artillery and anti-aircraft gunners and continues to the present day in which modern laid down in the middle years of the wwer undreamed of when the classical and modern control theories were desktop machines have computing ne twentieth century t Modern computer-aided control system design( CACSD)has been made possible by the synthesis of several key developments in computing. The development and continued dominance of high-level procedural lan guages such as FORTRAN enabled the development and distribution of standard mathematical software. The emergence of fully interactive operating systems such as UNIX and its user"shells"influenced the development of CACSD packages which have been constructed along similar lines. The ready availability and cheapness of raster-graphic displays has provided the on-screen display of data from control systems analysis, the creation of tools for modeling control systems using familiar block diagrams and have the potential to make order-of- magnitude improvements in the ease-of-use, ease-of-manipulation, and efficiency of the interaction between the control designer, his model, analysis tools, and end-product---software for embedded controllers. The driving force of all these developments is the seemingly continual increase in computing power year-on-year and the result has been to make computers accessible to large numbers of people while at the same time makir them easier to use A control engineer often describes systems through the use of block diagrams. This is not only the traditional graphical representation of a control system, it is also an almost discipline-independent, and thus universally understandable, representation for dynamic systems. The diagrams may also constitute a complete documentation Originally published as"Computer-Aided Control Systems Design", Chapter 23, Pp 429-442, in Levine, w S(Ed ), The Control Handbook, CRC Press, 1995 c 2000 by CRC Press LLC
© 2000 by CRC Press LLC 112 Computer-Aided Control Systems Design1 112.1 Introduction 112.2 A Brief History of CACSD Technological Developments • User Interfaces • CACSD Packages of Note 112.3 The State of the Art in CACSD Consolidation of CACSD • A critique of Matrix Environments for CACSD • “Open Systems” • Other Desirable Features 112.4 CACSD Block-Diagram Tools Basic Block-Diagram System Representations • Architectures of Block-Diagram Systems • Open-Architectures of Block-Diagram Editors 112.1 Introduction The use of computers in the design of control systems has a long and fairly distinguished history. It begins before the dawn of the modern information age with the analog computing devices that were used to create tables of ballistic data for artillery and anti-aircraft gunners and continues to the present day in which modern desktop machines have computing power undreamed of when the classical and modern control theories were laid down in the middle years of the twentieth century. Modern computer-aided control system design (CACSD) has been made possible by the synthesis of several key developments in computing. The development and continued dominance of high-level procedural languages such as FORTRAN enabled the development and distribution of standard mathematical software. The emergence of fully interactive operating systems such as UNIX and its user “shells” influenced the development of CACSD packages which have been constructed along similar lines. The ready availability and cheapness of raster-graphic displays has provided the on-screen display of data from control systems analysis, the creation of tools for modeling control systems using familiar block diagrams and have the potential to make order-ofmagnitude improvements in the ease-of-use, ease-of-manipulation, and efficiency of the interaction between the control designer, his model, analysis tools, and end-product—software for embedded controllers. The driving force of all these developments is the seemingly continual increase in computing power year-on-year and the result has been to make computers accessible to large numbers of people while at the same time making them easier to use. A control engineer often describes systems through the use of block diagrams. This is not only the traditional graphical representation of a control system, it is also an almost discipline-independent, and thus universally understandable, representation for dynamic systems. The diagrams may also constitute a complete documentation 1 Originally published as “Computer-Aided Control Systems Design”, Chapter 23, pp 429–442, in Levine, W. S. (Ed.), The Control Handbook, CRC Press, 1995. C. Magnus Rimvall F. L. Smith & Co. A/S Christopher P. Jobling University of Wales
of the designed system Block diagrams are self-documenting and, when appropriately annotated, may form complete and consistent specifications of control systems. It is, therefore, not surprising that a number of tools for modeling(control)systems through block diagrams have emerged on the market over the last 5 to 10 years In addition to serving as a documentation aid, the overall cost and cycle time for developing complex controllers is radically reduced if analysis/ simulation code and/or real-time code is automatically generated from the block-diagrams. This eliminates time-consuming manual coding, and avoids the introduction of coding bugs. In this chapter, we explore the state-of-the-art in CACSD. We begin with a brief survey of the tools that have been developed over the years. We then focus on the matrix environments that provide the current standard and attempt to explain why they are important. we also examine modern block-diagram editors, simulation and code generation tools, and finally allow ourselves to speculate on the future 112.2 A Brief History of CACSD The term computer-aided control system design may be defined as The use of digital computers as a primary tool during the modeling, identification, analysis, and design CACSD tools and packages typically provide well-integrated support for the analysis and design of linear plant and controllers although many modern packages also provide support for the modeling, simulation, and linearization of nonlinear systems and some have the capability of implementing a control law in software. Figure 112. 1(adapted and updated from Rimvall[ 1987, 1988))illustrates the development of CACSD pack ages over the last four decades. In order to put events into proper context, other key influencing factors, chiefly hardware and software developments, are also shown. In this section we describe the background to the emergence of CACSD tools in more detail, starting with technological developments and then moving on to user interface aspects. The aim is to understand the current state-of-the-art by examining the historical context in which these tools have been developed. Packages a serot ENIAC BM701 1970 FIGURE 112.1 The historical development of interactive CACSd tools showing the availability of related hardware and software. Some actual products are included to indicate the state-of-the-art. e 2000 by CRC Press LLC
© 2000 by CRC Press LLC of the designed system. Block diagrams are self-documenting and, when appropriately annotated, may form complete and consistent specifications of control systems. It is, therefore, not surprising that a number of tools for modeling (control) systems through block diagrams have emerged on the market over the last 5 to 10 years. In addition to serving as a documentation aid, the overall cost and cycle time for developing complex controllers is radically reduced if analysis/simulation code and/or real-time code is automatically generated from the block-diagrams. This eliminates time-consuming manual coding, and avoids the introduction of coding bugs. In this chapter, we explore the state-of-the-art in CACSD. We begin with a brief survey of the tools that have been developed over the years. We then focus on the matrix environments that provide the current standard and attempt to explain why they are important. We also examine modern block-diagram editors, simulation and code generation tools, and finally allow ourselves to speculate on the future. 112.2 A Brief History of CACSD The term computer-aided control system design may be defined as: The use of digital computers as a primary tool during the modeling, identification, analysis, and design phases of control engineering. CACSD tools and packages typically provide well-integrated support for the analysis and design of linear plant and controllers although many modern packages also provide support for the modeling, simulation, and linearization of nonlinear systems and some have the capability of implementing a control law in software. Figure 112.1 (adapted and updated from Rimvall [1987,1988]) illustrates the development of CACSD packages over the last four decades. In order to put events into proper context, other key influencing factors, chiefly hardware and software developments, are also shown. In this section we describe the background to the emergence of CACSD tools in more detail, starting with technological developments and then moving on to user interface aspects. The aim is to understand the current state-of-the-art by examining the historical context in which these tools have been developed. FIGURE 112.1 The historical development of interactive CACSD tools showing the availability of related hardware and software. Some actual products are included to indicate the state-of-the-art
Technological Developments Computing Hardware Since 1953, there has been a phenomenal growth in the capabilities and power of computing hardware. Observers estimate that the power of computing devices(in terms of both execution speed and memory availability) has doubled every second to third year, whereas the size and cost(per computational unit)of the hardware has halved at approximately the same rate. In terms of CACSD, the chief effect of these developments has been to widen the range of applications for computing and at the same time to make computers, and therefore the applications, widely available to practitioners in all branches of the subject. For example control engineers, control theorists, and control implementors all benefit as described below Desk-top machines which are orders of magnitude more powerful than mainframe machines of two decades ago provide the means by which CACSD can be brought to the data analysis, model building, simulation, performance analysis and modification, control law synthesis, and documentation that is the day-to-day work of the control engineer without powerful computing hardware, many of the complex algorithms developed by control theorists for both analysis and implementation would otherwise be impractical Embedded computer systems, which implement controllers, smart actuators, and smart sensors, are inely used to imple ne control laws developed by control engineers and control The development of system software, such as operating systems, programming languages and program execution environments, has been slower than that of hardware, but is nonetheless impressive. Less impressive is the eadily increasing cost of application software, estimated at about 80% of the total installation cost of computing system, which developments in computer science have been largely unable to reduce. We are, in fact, in the midst of a software crisis, dating from about 1968, which is the result of ever increasing improvements in hardware. Such improvements increase the possibilities for software, raise the expectations of users, and therefore raise the stakes in software production faster than improvements in software development technology has been made High Level languages The invention of FoRTRAN was a major breakthrough in engineering computing. A high-level language, FORTRAN and the compilers that convert it into machine code, allowed engineers to write programs in a language that was sufficiently close to mathematical notation so as to be quite natural. Since its invention, numerous other high-level languages have been created, although FORTRAN continues to dominate ing"number-crunching. For the implementation of control algorithms, assembly languages are sti although high(er)level languages such as C, which is the predominant systems programming language, MOD ULA, and ADa are gaining acceptance in the market place. Graphical Displays Engineers are, in general, more comfortable with pictures than with text as a means of communicating their ideas. Hence, the wide availability of graphical displays is of prime importance to many areas of engineering omputing. Indeed, the development of computer graphics has been the means by which certain control systems design techniques, such as multivariable control systems analysis, have been made practicable. Computer graphics have also been instrumental in providing improvements in human-machine interfaces such as sche matic systems input and direct manipulation interfaces with windows, icons, pull-down menus, and pop-up dialog boxes. Further improvements in user interfacing techniques such as hypermedia will continue to rely on developments in display technology. For modern CACSD, the most significant development in display technology has been the development of cheap, high-resolution raster graphics displays, although, historically, great strides were made with less well e 2000 by CRC Press LLC
© 2000 by CRC Press LLC Technological Developments Computing Hardware Since 1953, there has been a phenomenal growth in the capabilities and power of computing hardware. Observers estimate that the power of computing devices (in terms of both execution speed and memory availability) has doubled every second to third year, whereas the size and cost (per computational unit) of the hardware has halved at approximately the same rate. In terms of CACSD, the chief effect of these developments has been to widen the range of applications for computing and at the same time to make computers, and therefore the applications, widely available to practitioners in all branches of the subject. For example control engineers, control theorists, and control implementors all benefit as described below. • Desk-top machines which are orders of magnitude more powerful than mainframe machines of two decades ago provide the means by which CACSD can be brought to the data analysis, model building, simulation, performance analysis and modification, control law synthesis, and documentation that is the day-to-day work of the control engineer. • Without powerful computing hardware, many of the complex algorithms developed by control theorists for both analysis and implementation would otherwise be impractical. • Embedded computer systems, which implement controllers, smart actuators, and smart sensors, are routinely used to implement the control laws developed by control engineers and control theorists. System Software The development of system software, such as operating systems, programming languages and program execution environments, has been slower than that of hardware, but is nonetheless impressive. Less impressive is the steadily increasing cost of application software, estimated at about 80% of the total installation cost of a computing system, which developments in computer science have been largely unable to reduce. We are, in fact, in the midst of a software crisis, dating from about 1968, which is the result of ever increasing improvements in hardware. Such improvements increase the possibilities for software, raise the expectations of users, and therefore raise the stakes in software production faster than improvements in software development technology has been made. High Level Languages The invention of FORTRAN was a major breakthrough in engineering computing. A high-level language, FORTRAN and the compilers that convert it into machine code, allowed engineers to write programs in a language that was sufficiently close to mathematical notation so as to be quite natural. Since its invention, numerous other high-level languages have been created, although FORTRAN continues to dominate engineering “number-crunching”. For the implementation of control algorithms, assembly languages are still popular although high(er) level languages such as C, which is the predominant systems programming language, MODULA, and ADA are gaining acceptance in the market place. Graphical Displays Engineers are, in general, more comfortable with pictures than with text as a means of communicating their ideas. Hence, the wide availability of graphical displays is of prime importance to many areas of engineering computing. Indeed, the development of computer graphics has been the means by which certain control systems design techniques, such as multivariable control systems analysis, have been made practicable. Computer graphics have also been instrumental in providing improvements in human-machine interfaces such as schematic systems input and direct manipulation interfaces with windows, icons, pull-down menus, and pop-up dialog boxes. Further improvements in user interfacing techniques such as hypermedia will continue to rely on developments in display technology. For modern CACSD, the most significant development in display technology has been the development of cheap, high-resolution raster graphics displays, although, historically, great strides were made with less well
known and more expensive vector refresh and vector storage display technology. The prime feature of raster scan technology is that an area of the image may be made to appear to move on the screen by the application of simple logical operations. Raster graphics displays are, therefore, ideal for building direct manipulation graphics applications such as block diagram editors, which will be discussed later. They are not so well suited to the direct display and manipulation of vector images, which are a key part of many engineering graphi applications. For example, it is difficult to move part of a vector image such as a bode-plot without destroying the rest of the picture or to display sloping lines that look smooth at low resolutions. However, the dominance f the technology has been a factor in ensuring that the deficiencies in the technology can be overcome by clever software Quality Numerical Software Following the invention of FORTRAN there was a gradual development of useful general purpose subroutines that could be archived into libraries, distributed, and shared. This lead eventually to the development of standard subroutine libraries such as EIS-PACK [Smith et al., 1977], LINPACK [Dongarra et al., 1979), and LAPACK [Anderson et al., 19789](for solving eigenvalue problems and sets of linear equations)which have had a direct influence on the development of CACSD Simulation languages For many years before the predominance of digital computers, dynamic system behavior was simulated using analog and hybrid computers. Digital simulation began to take over from analog and hybrid simulation during the mid-1960s Digital simulation programs can be used to model a wider range of nonlinear phenomena more reliably than analog or hybrid computers, at the cost of losing real-time and introducing quantization problems However, the disadvantages of the technology are more than outweighed by improvements in modeling pos sibilities and increases in productivity. Digital simulation has superseded analog computation in all but a few ialized areas The first digital simulation systems were FORTRAN programs. Eventually, special purpose languages emerge which allowed statements written in a form close to state equation notation to be translated into FORTRAN which enabled the engineer to concentrate on the problem description. In 1967, a standard language called CSSL (Continuous Systems Simulation Language)[Augustin et al., 1967] w Council and this forms the basis of most simulation languages in use tod, s proposed by the U.SSimulation User Interfaces Over the years, user interaction with computers has become progressively more direct. In the very early days the user interface was another human being. These"operators"were gradually replaced by operating systen which provided communication first through the medium of punch-card and paper tape, then later by teletype machines, text-based visual display units, and, most recently, by windowed graphical user interfaces. Along with this change, there has been a corresponding change in style for CACSD tools. Batch mode programs were collected into "packages"and provided with question and answer or menued interfaces. These, in turn, have been largely superceded by command driven interfaces and direct-manipulation graphical user interfaces, currently used only for specialized tasks such as block-diagram input, will have a wider role in future CACSD packages CACSD Packages of Note As the supporting technology has developed, control engineers mainly working in academia have been actively engaged in developing tools to support developments in control theory and mbining these tools packages. Early pioneering work was carried out in Europe where the emphasis was on frequency response methods for multivariable control systems analysis and design. Some of the first CACSD packages were devel oped in the mid-1970s. In the U.S., control theory was concentrated in the time domain and made use of e 2000 by CRC Press LLC
© 2000 by CRC Press LLC known and more expensive vector refresh and vector storage display technology. The prime feature of rasterscan technology is that an area of the image may be made to appear to move on the screen by the application of simple logical operations. Raster graphics displays are, therefore, ideal for building direct manipulation graphics applications such as block diagram editors, which will be discussed later. They are not so well suited to the direct display and manipulation of vector images, which are a key part of many engineering graphics applications. For example, it is difficult to move part of a vector image such as a bode-plot without destroying the rest of the picture or to display sloping lines that look smooth at low resolutions. However, the dominance of the technology has been a factor in ensuring that the deficiencies in the technology can be overcome by clever software. Quality Numerical Software Following the invention of FORTRAN there was a gradual development of useful general purpose subroutines that could be archived into libraries, distributed, and shared. This lead eventually to the development of standard subroutine libraries such as EIS-PACK [Smith et al., 1977], LINPACK [Dongarra et al., 1979], and LAPACK [Anderson et al., 19789] (for solving eigenvalue problems and sets of linear equations) which have had a direct influence on the development of CACSD. Simulation Languages For many years before the predominance of digital computers, dynamic system behavior was simulated using analog and hybrid computers. Digital simulation began to take over from analog and hybrid simulation during the mid-1960s. Digital simulation programs can be used to model a wider range of nonlinear phenomena more reliably than analog or hybrid computers, at the cost of losing real-time and introducing quantization problems. However, the disadvantages of the technology are more than outweighed by improvements in modeling possibilities and increases in productivity. Digital simulation has superseded analog computation in all but a few specialized areas. The first digital simulation systems were FORTRAN programs. Eventually, special purpose languages emerged which allowed statements written in a form close to state equation notation to be translated into FORTRAN which enabled the engineer to concentrate on the problem description. In 1967, a standard language called CSSL (Continuous Systems Simulation Language) [Augustin et al., 1967] was proposed by the U.S. Simulation Council and this forms the basis of most simulation languages in use today. User Interfaces Over the years, user interaction with computers has become progressively more direct. In the very early days, the user interface was another human being. These “operators” were gradually replaced by operating systems which provided communication first through the medium of punch-card and paper tape, then later by teletype machines, text-based visual display units, and, most recently, by windowed graphical user interfaces. Along with this change, there has been a corresponding change in style for CACSD tools. Batch mode programs were collected into “packages” and provided with question and answer or menued interfaces. These, in turn, have been largely superceded by command driven interfaces and direct-manipulation graphical user interfaces, currently used only for specialized tasks such as block-diagram input, will have a wider role in future CACSD packages. CACSD Packages of Note As the supporting technology has developed, control engineers mainly working in academia have been actively engaged in developing tools to support developments in control theory and in combining these tools into packages. Early pioneering work was carried out in Europe where the emphasis was on frequency response methods for multivariable control systems analysis and design. Some of the first CACSD packages were developed in the mid-1970s. In the U.S., control theory was concentrated in the time domain and made use of