PATENT ABSTRACT
The present invention is a Control System Architecture (CSA) for a multi-component armament system. The CSA provides dynamic reconfiguration of multiple nodes (e.g. a component, a subsystem, or a virtual simulation) in a Simulation-Emulation-Stimulation (SES) environment utilizing redundant client-server bus configuration of the nodes in a hierarchical model. The CSA provides for ease of configuration of nodes for any specific application, automated system reconfiguration capabilities to detect and bypass failed nodes or re-group available remaining nodes in the event of degraded mode operation, and expansion and/or downsizing of nodes without requiring a modification to the overall system architecture.

PATENT DESCRIPTION
FIELD OF THE INVENTION  
         [0001]    The present invention relates to multi-component armament or weaponry systems. More particularly, the present invention relates to a robust control system architecture for simulation and control of multi-component armament systems.  
         BACKGROUND OF THE INVENTION  
         [0002]    Modern armament systems for military applications are increasingly complex. Typically, there are a plurality of disparate components that are controlled by a complex control system, which coordinates and integrates the operation of each component in the system.  
           [0003]    In the early stages of evolution, armament control systems were merely a series of mechanical mechanism that allowed an operator to activate a particular component using the judgment of the operator. One such example is the mechanical linkage for weapons release on early military aircraft. When the pilot determined the plane was at the correct location, the pilot would actuate a particular linkage from the cockpit, thereby releasing the related weapon. With the advent of electronic control systems, the remote release of a particular weapon component controlled by such a system became possible. An electronic switch in the cockpit of the military aircraft would send a signal through dedicated wiring to a weapon actuator, thereby releasing a particular weapon.  
           [0004]    The next stage in the evolution of armament systems was the integration of computer control into the armament system. Targeting control computers were combined with data acquired from sources such as radar system to aide the operator in target acquisition, thereby improving on-target percentages. U.S. Pat. No. 4,004,729 is an example of such a system that provides an automated fire control apparatus. The control system of this patent connects a radar tracking system with a targeting computer and weapon positioning means. The computer control system provides a larger period of time during which the weapon may be successfully fired at the intended target.  
           [0005]    As computer systems became more powerful, it became more common to centralize the control functions in a single armament control system that could manage multiple diverse armament components. U.S. Pat. No. 5,229,538 is an example of one type of centralized armament control system. This patent provides a digital communications armament system for controlling a carriage of “smart” weapons. The smart weapons are carried by the aircraft in a Multiple Carriage Rack (MCR). The weapons in the MCR are programmed and controllably released as part of a weapons control system. The components of this system are communicably interconnected by a single data bus as described in MIL-STD-1553. The military standard 1553 bus is a dual redundant bus comprising two shielded twisted pair cables, a bus controller, and a plurality of remote terminals.  
           [0006]    U.S. Pat. No. 5,036,466 is another example of a centralized armament control system. This provides a central control unit that also is communicably connected by a MIL-STD-1553 bus to multiple armament components. The system further interacts with the operator by the inclusion of graphical user interfaces (GUI&#39;s), which are typically video display screens. The GUI&#39;s allow the operator to monitor system status and actuate desired system functions. All of the components are connected by a single common bus to a central bus controller. The central bus controller directs the flow of information along the bus between the central controller and the various components.  
           [0007]    As armament control systems have evolved over time, the engineering processes used to develop these increasingly complex systems have undergone corresponding evolutions. Not long ago, engineers would brainstorm solutions to problems in their minds and transfer them to paper by hand. These drawings could then be used by fabricators to construct prototypes. The prototypes were then field tested to determine whether that particular design met the problem criteria. If the prototype did not acceptably solve the problem, modifications were made or new ideas were tried. This involved repeating the steps of brainstorming, drafting, fabrication, and testing. This “trial and error” process was iterative in nature and proved to be both lengthy and labor intensive.  
           [0008]    The application of computers to the conventional design process has brought about several improvements. Computer drafting programs created a cost savings by streamlining the drawing step through minimizing the time it took a draftsperson to prepare drawings and modify the drawings in subsequent design process iterations. With the advent of Computer-Aided Engineering (CAE) tools, the design process could be further streamlined by minimizing the amount of iterations that needed to be performed before a satisfactory solution was obtained. CAE tools permit engineers to perform modeling and simulation of specific tasks performed by the system. Through modeling and simulation, many unacceptable solutions to the problem can be eliminated without the need to fabricate expensive prototypes or undertake lengthy and costly testing.  
           [0009]    The resulting streamlined engineering process produces satisfactory results for a majority of engineering applications. However, this process cannot provide a smooth and efficient flow for the development of multi-component armament systems. In a multi-component armament system, there can be at least several different subsystems that are typically developed concurrently by different engineering teams. This type of parallel development, while compressing the time needed for the development cycle, creates communication difficulties between different development teams. The different subsystems ultimately must be combined with one another in the design process as part of an integration process step. During integration, the different subcomponents are combined as a complete multi-component armament unit that is then tested as a completed system. It is typical that, the completed system must undergo a series of modifications in order to debug problems that arise during the integration testing process. The additional steps of integration and testing of the overall system, when individual subsystems have already been tested, adds length and cost to the development process.  
           [0010]    The assignee of the present invention has developed a Simulation-Emulation-Stimulation (SES) process that streamlines the complex development process for integrated multi-component weaponry systems. The SES process addresses the communication issue by creating a virtual armament simulation system that each development team can use to simulate the characteristics of the complete system during the development of a particular subsystem, thereby minimizing or eliminating problems that may be encountered during integration and testing. The virtual armament simulation system includes a virtual prototype of each subsystem. The virtual prototypes simulate the characteristics of each subsystem. Each team can then develop their particular subsystem within the simulation of a real world installation. As with other types of existing control systems, components of the virtual armament SES system and the virtual prototypes are linked in communication by different communication channel, for example, a single MIL-STD 1553 bus or an Ethernet link. For a more detailed description of the SES process, see Huang, et. al., “System Integration Laboratory—A New Approach to Software/Electronics System Integration” (1996), Huang et. al., “Modeling and Simulation Based System Integration Approach” (1997), Huang et. al., “Using Modeling and Simulation for Rapid Prototyping and System Integration” (1997), Huang et. al., “Simulation-Emulation-Stimulation A Complete Engineering Process” (1998), Huang et. al., “System Simulation Based Engineering Process” (1998), Huang et. al., “System Design Using Virtual Prototyping Techniques” (1998).  
           [0011]    Presently, there exists a need for an armament control system design that can serve as the armament control system in the virtual environment of the development/simulation process, such as the SES process, and that can also serve as the actual control system for a multi-component armament system in the real installation. This control system should be dynamically reconfigurable to control a virtual prototype, a real component, or both. Additionally, there is a continuing need to provide a control system for a multi-component armament system that is scalable, easily upgraded, and that has improved usability, flexibility, and interoperability.  
         SUMMARY OF THE INVENTION  
         [0012]    The present invention is a Control System Architecture (CSA) for a multi-component armament system. The CSA provides dynamic reconfiguration of multiple nodes (e.g. a component, a subsystem, or a virtual simulation) in a Simulation-Emulation-Stimulation (SES) environment utilizing redundant client-server bus configuration of the nodes in a hierarchical model. The CSA provides for ease of configuration of nodes for any specific application, automated system reconfiguration capabilities to detect and bypass failed nodes or re-group available remaining nodes in the event of degraded mode operation, and expansion and/or downsizing of nodes without requiring a modification to the overall system architecture.  
           [0013]    Unlike existing control systems that connect all of the armament components to a common bus, controlled by a single controller, various components of the CSA are preferably connected in a web-like topology. The use of a single common bus to interconnect multiple components of an armament system has been dictated by the need for well defined communications between the controller and the armament components. A signal to fire a weapon must be delivered to that component in a timely manner. The single bus single controller architecture enables existing systems to be designed such that control signals will arrive when expected. In contrast, a web-like topology provides for multiple communication paths between components and, as such, delivery of messages usually is not accomplished in a deterministic manner. To overcome this, the present invention utilizes a real time scheduler within the CSA to monitor communications in the client-server architecture. The scheduler enables the CSA to overcome slow points and broken lines of communication while still preserving the predictable time response required of an armament system. This imparts an increased robustness to the system that is not found in the prior art armament systems, each of which featuring point-to-point communications topology.  
           [0014]    One embodiment of the present invention provides for a client-server type multi-tiered hierarchical network for controlling a multi-component armament system. In one case, the top level of the system comprises a system controller. The system controller is comprised of an input/output management (IM) server, a notational controller (NC) server, and several placeholder (PH) servers. The second layer is comprised of a man-machine-interface (MMI) client, a plant model client, and a controller client. The third layer is comprised of first and second graphical user interfaces (GUI&#39;s) and a test stand. The MMI is configurable to operate either a virtual prototype of an armament component, a real version of the armament component, or both. The switching between the virtual prototype, real prototype, or both is preferably accomplished by the inclusion of an A/B/C switch programably included in the system controller software. The inclusion of the A/B/C switch in the hierarchical client-server architecture allows the CSA to be reconfigured during system development and test. Additionally, the hierarchical nature of the CSA promotes system scalability, in that new nodes can be added to or subtracted from a level, and even new levels can be added to the system. The scalability feature allows the system architecture to be easily modified, upgraded and maintained.  
           [0015]    Each node in the CSA can assume either a server role, a client role, or both, in the hierarchical architecture. The overall control function of the CSA can be handed down by the system controller to a client component at a lower level or to a new component added to the system with that component then assuming a server role in the CSA. Preferably, the CSA uses commercially available operating environments and is communicably connected to an intranet. 
       
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0016]    [0016]FIG. 1 is a diagrammatic chart of the prior art engineering development process.  
         [0017]    [0017]FIG. 2 is a diagrammatic process chart for the SES process.  
         [0018]    [0018]FIG. 3 is a schematic of a prior art single bus, single controller armament system architecture.  
         [0019]    [0019]FIG. 4 is a conceptual representation of the web-like connectivity a multi-component armament system in accordance with the present invention.  
         [0020]    [0020]FIG. 5 is a hierarchical diagram of a multi-component armament system having a control system architecture according to one embodiment of the present invention.  
         [0021]    [0021]FIG. 6 is the diagram of FIG. 5 showing component details.  
         [0022]    [0022]FIG. 7 is a conceptual diagram of a state machine.  
         [0023]    [0023]FIG. 8 is a state diagram of a preferred embodiment of a state machine for the control system of the present invention.  
         [0024]    [0024]FIG. 9 is a detailed state diagram of showing further details of the state machine of FIG. 8.  
         [0025]    [0025]FIG. 10 is an exploded parts view of the real time controller according to one embodiment of the present invention.  
         [0026]    [0026]FIG. 11 is front view of the real time controller of FIG. 10.  
         [0027]    [0027]FIG. 12 is a side view of the real time controller of FIG. 10.  
         [0028]    [0028]FIG. 13 is a front view of the VME rack of the real time controller of FIG. 10.  
         [0029]    [0029]FIG. 14 is a block diagram of the internal cabling for the real time controller of FIG. 10.  
         [0030]    [0030]FIGS. 15 and 16 are front and side views of the CPU controller cards in slots one and two of the VME rack of FIG. 13.  
         [0031]    [0031]FIGS. 17 and 18 are front and side views of the Transition module for the CPU controller card of FIG. 14.  
         [0032]    [0032]FIGS. 19 and 20 are a front and side view of the DAC card.  
         [0033]    [0033]FIGS. 21 and 22 are a front and side view of the I/O port card.  
         [0034]    [0034]FIGS. 23 and 24 are a front and side view of the bus converter card.  
         [0035]    [0035]FIGS. 25 and 26 are a front and side view of the Channel Resolver card.  
         [0036]    [0036]FIGS. 27 and 28 are a front and side view of the Digital to Syncro/Resolver card. 
     
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT  
       [0037]    Referring to FIG. 1, the prior art conventional engineering development process is shown generally at  20 . The steps of the prior art design process are, in order, generation of system requirements  22 , development of concepts  24 , produce designs based on the concepts  26 , prototyping  28 , building individual systems  30 , integrating those individual systems  32 , and performing testing and evaluation of the completed system  34 . If the testing and evaluation stage  34  revealed that the particular design is not acceptable, then the process must be reiterated starting back at the prototype stage  28 , or earlier.  
         [0038]    Referring to FIG. 2, the Simulation-Emulation-Stimulation (SES) process, generally designated at  36  minimizes the required iterations and condenses the steps of the prior conventional development process. SES comprises the steps of using system specifications to generate a set of system requirements  38 , performing modeling and simulation (M&amp;S)  40  of the multi-component armament system, simultaneously generating design documentation  48  and system code  42  from the simulation, downloading the system code  42  into an emulation environment  44 , and stimulating the emulation  46 .  
         [0039]    System specifications for armament systems are typically provided by the customer. Designated members of a development team use their collective experience and intelligence to construct a set of system requirements from the specifications. Then, using Computer Aided Engineering (CAE) tools, those requirements are incorporated into the modeling environment as part of the M&amp;S  40  step. Those skilled in the art will recognize that many different types of CAE tools are commercially available that are well suited for the M&amp;S task  40 . The model generated by the CAE tools is referred to as a high-level simulation model (HLSM). The mechanical system models are constructed by using off-the-shelf programs such as ProEngineer from PTC. Other suitable alternatives are Solid Works, Catia and AutoCad. The electrical controls are similarly simulated, preferably using MatrixX by ISI (Integrated Systems Inc.). Those skilled in the art will recognize that electrical and mechanical schematics can be produced as an inherent function of these M&amp;S programs. Such schematics become part of the system design documentation  48 . The MatrixX program possesses the capability to automatically generate the computer code required to operate any of the various components of the armament system. This is a powerful feature because it eliminates the tedious line-by-line coding and debugging tasks otherwise necessary. Automatically generated code has passed rigorous scrutiny in armament control systems and such code is currently used in many mission critical military applications.  
         [0040]    The HLSM is first tested on the emulation environment  44  to produce preliminary results. The CAE tools allow for changes to be made to the system models and the generation of functionally equivalent software modules  42 . From the HSLM using the CAE tools, a set of design documentation can be generated  48 . The design documentation is useful to the subsystem design teams because it provides a detailed set of requirements to guide the development of a particular subsystem.  
         [0041]    The system model and software modules can then be used to emulate the function of the complete software of the system in an emulation environment  44 . This process is often referred to as rapid virtual prototyping (RVP). The software code is downloaded into an emulation environment  50 . The emulation environment is preferably the same control system that will be used in the field application to control the multi-component armament system. The virtual prototypes in the SES process use CAE tools to simulate the characteristics of their corresponding armament component within the emulation environment  50 . As individual development teams proceed with the development of their respective subsystems, they can use the control system connected to the virtual prototypes to experiment with how the system might respond under different hypothetical circumstances. They can also replace their subsystem with its respective virtual prototype the test the functionality of the subsystem in the overall control system.  
         [0042]    [0042]FIG. 3 illustrates a typical control system used in multi-component armament systems and as part of the SES emulation  44  hardware. A plurality of armament components  52  are connected by a single MIL-STD 1553 bus  58  to a single system controller  54 . Each component  52  has a single connection  56  to the common bus  58 . The system controller  54  regulates the flow of information in the system as it moves along the bus  58  in a point-to-point communication manner. If a new component is added to the system, a component removed, or a component replaced with a different one, the controller  54  must be extensively reconfigured and modified. It was found that the simulation of such a single bus, point-to-point control system for the SES emulation hardware  44  was quite complicated to accomplish and involved significant modification and adjustments. Most importantly, it was cumbersome and complicated to modify the emulation environment  50  to add or delete additional components  52  into the control system.  
         [0043]    The present invention overcomes the drawbacks of a common bus architecture for interconnecting multiple components in an armament control system by employing a control system architecture (CSA) that utilizes a client-server hierarchical architecture. Conceptually, the difference between the present invention and the prior art can be best understood by comparing FIG. 3 showing a common bus architecture with FIG. 4 which shows a client-server architecture in accordance with the present invention where all of the armament components  62  are connected to a web-like intranet  60 . A real time scheduler  63  is shown as part of the intranet  60  and monitors communications among the various components  62  to determine whether communications are received when expected and, if not, to notify the sender that a communication was not received as expected.  
         [0044]    It will be understood that while an intranet  60  is often conceived of as a web-like connection arrangement as shown in FIG. 4, actual physical and logical interconnection must occur within the intranet  60 . Although the term intranet as used within the present invention includes the common understanding of all of the various ways in which actual physical and logical interconnections between machines and routers can be configured to create such a network, it should be understood that for purposes of the present invention it is intended that the term intranet is not limited to a conventional intranet arrangement and is better understood as a physical and logical interconnection of nodes that is “intranet-like”. In the present invention, a structured system hierarchy preferably is used to segment the intranet  60  of the CSA into manageable tiers with each tier containing at least one components. A generic representation of this structure is shown in FIG. 5. The hierarchical system is divided into multiple tiers  64  of components  62 . New tiers  64  may be added or entire tiers  64  subtracted from the whole system with few changes required to the overall operation. The nature of the physical and logical interconnection among the various components  62  in the intranet  60  will depend upon the components being connected and no restrictions are intended for these connections. Instead of using the point-to-point communication scheme of the common bus architecture, the present invention utilizes a transmission control protocol/internet protocol, such as (TCP/IP) client-server communication scheme in which communications can be passed among different components  62  within the multiple tiers of the intranet  60  until they arrive at their intended destination. Those skilled in the art will recognize that by configuring each of the various components  62  as a client-server, server functions can be handed down from a server towards the top of the hierarchy to a client lower in the hierarchy. This makes the system more robust because single component/subsystem failures will not likely cause a system wide failure. Preferably, the intranet  60  includes at least two different types of communication connections, a data connection  66  and a control signal connection  68 . The data connection  66  can be any connection over which a net-based protocol such as TCP/IP client-server communication scheme is routed. Alternatively, any other form of client-server packetized data communication scheme could be used for the data connection  66 . It will also be seen that the data connection  66  can include multiple redundancy features to provide further robustness to the CSA, or that more than one unique data connection  66  could be utilized with the present invention. The control signal connection  68  allows for a connection between nodes  62  of control signals other than conventional data signals. As will be described, these control signals can be amplified electrical signals used to control positioning apparatus in one or more of the nodes, for example. Although, the data connections  66  and control signal connections  68  are described in terms of electrical connections, it will also be recognized that such connections could be accomplished using optical, infrared or radio signals, as long as appropriate security and performance parameters can be met by such alternative communication connections.  
         [0045]    The CSA can easily accommodate the addition or subtraction of nodes due to the client-server nature of its hierarchy. Persons skilled in the art will understand the ability to add and subtract nodes from a client server network. Conceptually, for ease of understanding in armament systems, each component  62  or client can be represented as a component node  62  in the hierarchy as shown in FIG. 6. Each component node  62  has a distinct IP address. In a preferred embodiment, the real time controller  76  contains a master node profile  66 . The master node profile  66  contains the list of authorized IP addresses and corresponding client characteristics for each component node  62  in the heirarchy. The master node profile  66  only can be edited by an operator having authorized access. Within the real-time controller  66 , a real time Operating System (OS) preferably employs a master request routine. When the master polling routine encounters a new component node  62  in the heirarchy, the master polling routine compares the IP address of the new node to the master node profile  66  to determine both the validity of that node and the characteristics of the component(s) associated with that node. If the IP address is authorized, the client associated with that node is effectively brought on-line. If the new node is not authorized, it will not be brought into the system until authorization is provided. Similarly, the master polling routine recognizes the absence of a node and deactivates the corresponding client loop, effectively taking that component off-line.  
         [0046]    An example application of the CSA having two guns  80  and  82  is shown schematically in FIG. 5. A man-machine-interface (MMI)  70  is operably connected to a control box  72 , a real time controller  76 , a servo amplifier  74 , an ammunition magazine virtual prototype  78 , gun # 1   80 , gun # 2   82 , virtual prototype gun # 1   84  and virtual prototype gun #  86 . The MMI is the means an operator uses to input command information in to the CSA. The MMI can be a laptop PC, a keyboard, an interactive graphical user interface (GUI) a joystick, or even a remote device, such as a personal digital assistant (PDA). In this case, the MMI  70  is a user interface component node  62  in a first hierarchical layer, the control box  72 , real time controller  76  and servo amplifier  74  are control component nodes  62  in a second hierarchical layer, and the magazine virtual prototype  78 , gun  80  and gun  82 , as well as virtual prototype guns  84  and  86  are all armament component nodes  62  in a third and fourth hierarchical layers. It will be understood that the armament component nodes  62  can be either actual armament components or systems, scale models of such actual armament components or systems, or virtual prototypes of such actual armament components or systems or proposed armament components or systems.  
         [0047]    [0047]FIG. 6 shows the example as schematically illustrated in FIG. 5 with indicated box name, computer hardware, operating system, and application software. The MMI  70  is the interface between the system operator and the system itself. The MMI uses a common off-the-shelf (COTS) operating system (OS) such as Windows NT from Microsoft. In one embodiment, the MMI employs a compact OS commonly used by any of various hand held personal digital assistants (PDA&#39;s). The PDA has advantages over other types of man-machine interfaces that use a full-blown OS because it utilizes a compact OS having a quick recovery time if the PDA must be re-booted after an error occurs, whereas an MMI employing a more complicated OS such as NT will have a relatively longer recovery cycle. Under time critical circumstances contemplated by an armament system, quick recovery time is absolutely necessary. The MMI  70  is able to controllably operate the armament system using client control interface programs written in known computer languages or CASE tools such as Tcl/Tk, C++, Teja, or an equivalent. Each of the control interface programs in the MMI goes through a software socket into the real time controller  76 . The control box  72  provides the server function for this software socket. The control box  72  is preferably another client/server computer running an NT or other net-suitable OS that runs the server side of the control interface program written in a programming language or CASE tool such as Tcl/Tk, C++, Teja, or an equivalent to pass control commands from the MMI  70  to the appropriate component. In an alternative embodiment, the MMI  70  and control box  72  could be implemented as part of a single layer  64  in the hierarchy by using a single personal computer as the man-machine interface. Preferably, the MMI  70  and control box  72  are divided into different layers  64  in order to allow different types of components to be used as the MMI  70  and to allow more than one MMI component  70  to provide an interface to the intranet  60 .  
         [0048]    In a preferred embodiment, the Real Time controller  76  is housed in a VME chassis, which contains a plurality of processor cards to implement the various functions of the controller  76 . Alternatively, other backplane chassis arrangements than a VME bus, a PCI backplane, or even a single processor board, could be utilized to implement all of the functions of the controller  76 . The Real Time controller  76  executes a real time operating system pSOS from Integrated Systems, Inc. in the preferred embodiment. In the past other real-time operating systems such as Linx OS and VxWork have also yielded satisfactory results. As will be described, the real time OS fulfills the role of the scheduler  63  in the exemplary embodiment of the client-server hierarchy of the CSA of the present invention.  
         [0049]    One problem that had to be solved when employing the client-server web-like network in the context of an armament control system is timing of data communications. To illustrate the problem, consider the example of the most well-known client-server web-like network, the world wide web (WWW). Anyone who has used the WWW knows that e-mail sent over the WWW takes a random amount of time to reach its intended destination. Sometimes this may be one second, sometimes one minute, sometimes one hour, and sometimes one day or longer. This unpredictable time delay is unacceptable in an armament or other time-critical control system. One cannot spare minutes, hours, days, or even seconds for a fire command to reach a firing control client that activates the weapon. Therefore, the present invention provides a scheduler  63  that is part of the intranet  60  and preferably is programmably included in the pSOS real time OS of the controller  76 . The scheduler  63  monitors the time it takes communication over the itnranet  60  to reach its destination. If the communication does not reach its destination in the specified time as determined by the master profile database  66 , the scheduler  63  notifies the originator of the message that an error in transmission occurred, in this case due to a timeout failure. The client originator will then take whatever remedial actions are proscribed in the event of a communication failure. By the inclusion of a scheduler  63 , the CSA of the present invention knows whether a communication signal between different component nodes  62  in the network  60  reaches its destination in a timely fashion because the scheduler fulfills the policing function.  
         [0050]    The real time controller  76  uses computer code to control each of the various clients in the lower levels  64  of the hierarchy. A CASE tool such as MatrixX is preferredbecause the control system hierarchy can be implemented by inputting the desired computer logic into the MatrixX program, thereby automatically generating the code. However, C or any other computer language that can be compiled or some script languages such as JAVA can also be used. The system behavior encoded in the software can be described as a state machine. The concept of describing system behavior with a state machine is known to those skilled in the art. Conceptually, a state machine is shown in FIG. 7. The component is in a particular resting condition referred to as the source state  100 . When a pre-defined condition  104  occurs, a particular action  106  is taken that triggers the component to enter the target state. The server for a particular component can monitor the state of that component and communicate it to the controller  76  and the operator through the MMI  70 . States themselves can be broken down into sub-states and so on, thereby providing further suitable control functions.  
         [0051]    [0051]FIG. 8 illustrates the state machine used in the preferred embodiment of the present invention. Starting with power off state  118 , the system power is turned on. The system then enters the initialization state  110 . Within the initialization state  110 , a self test is performed to verify proper function of the controller  76 . If the self-test fails, then it will reiterate. After several passes, if the failure persists, a failure indication will be provided to the operator so the problem can be corrected. If the self test  110  is passed, the system proceeds to the client monitor state  112 . As will be described, the client monitor state  112  is where the controller  76  spends most of its time when the CSA is up and running and handling client connection requests. If an error is detected in the client monitor state  112 , control will be passed to an error handling routine  114 . A client release routine  116  can be entered either by the client monitor state  112  detecting that a given client (node) has dropped out of the network, or indirectly as a result of the error handling routine  114 .  
         [0052]    [0052]FIG. 9 illustrates the details of the client monitor state  112 . First, the master polling routine  120  polls the software sockets to determine whether there are any client connection requests received from the nodes  62  in the network. Although a polling arrangement is described, it will be understood that the polling routine could also be implemented using priority interrupts or some combination of polling and interrupts. In response to a client connection request, the request is authenticated at client authentication  122 . If there is an unauthorized client, the connection error  130  is triggered and information sent to the error handling routine  114 . If the connection request is authenticated, it is passed to the database comparison state  124 . The database comparison state  124 , checks the connection request against the master profile database  66  to determine the parameters and profiles to be used in processing the connection request. If the database is not properly verified for the connection request, a connection error  130  occurs that sends information to the error handling routine  114 . The data transfer routine  126  enables the data transfer to occur between the client and server and monitors the transfer in accordance with the parameters set in the master profile database. In the event of a timeout condition, the data transfer routine  126  would transfer state control to the connection error routine  130 . To insure that each transfer is appropriately authorized and monitored, once a data transfer or data communication is complete, a client logoff routine  128  effectively ends the authorized communication channel between the client and server for that communication. From the client logoff routine  128 , the client monitor state  112  returns to the main polling routine  120 ..  
         [0053]    Referring again to FIG. 5, a servo amplifier  74  is also contained within the control system and connected to the other various components. Servo amplifiers are well understood by those skilled in the art. The servo amplifier  74  functions to amplify the control signal sent along the control connections  68  to the physical manipulation mechanisms of an actual gun  80  and/or  82 , for example. These control signals could be to power an electric motor that turns the platform on which a gun  80  is mounted. The servo amplifier  74  is necessary to boost the power, current and/or voltage of the control signals to the appropriate levels to proper drive the physical manipulation mechanisms of an actual physical component  62 . Suitable servo amplifiers are available either as COTS or custom-made devices particularly adapted to the requirements of a given physical component  62 .  
         [0054]    The CSA when used in the SES system also includes a plurality of virtual prototypes (VP&#39;s). As shown in the preferred embodiment of FIG. 5, a VP of two guns, gun # 1   80  and gun # 2   82  are connected along with a VP of an automated ammunition magazine  78 . Virtual prototypes have all the attributes (shape, dimension, weight, friction, etc.) of the real prototype, except that all of these attributes are modeled in digital form. This allows many variations of prototype to be tested without the time and expense of creating a real prototype. The VP physically is a personal computer or equivalent running specialized software that simulates the prototype in a virtual world. Programs well suited to running VP&#39;s include a combination of graphical software by Engineering Animation Inc and real-time dynamics software by MatrixX (by ISI).  
         [0055]    During the development process, it is also advantageous to be able to connect a scale size real prototype to the CSA as shown in FIG. 5, for example, for gun  80 . Each real prototype is also a client/server having an IP address that is connected to the control system architecture. Instead of inconveniently disconnecting the VP of a component and connecting the real prototype, an A/B/C switch is preferably implemented as part of the real time controller  76  to allow dynamic switching between the virtual component, its prototype, or both simultaneously. Preferably, the A/B/C switch is a combination of software executing in the real time OS coupled with appropriate connection path switches for both the data connections  66  and the control signal connection  68 .  
         [0056]    [0056]FIG. 10 is an exploded depiction of a preferred embodiment of the hardware for the completed real time controller  76 . The cabinet frame  101  has a Plexiglas front door  102  pivotally attached to the left side of the frame  101 . The side panels  103  are fastened to the frame  101 . The back panel  104  is fastened to the rear of the frame  101  and louvered to promote sufficient airflow which aides in cooling the cabinet. Back panel connector  105  is affixed to the back panel  104 . Top and bottom panels  106  are fastened to the frame  101  and the bottom of the frame is fitted with a roller caster assembly  107  to aide in transporting the real time computer  76 . The cabinet further includes an outlet surge protection block  108  and a 30 volt power supply  109 . A power relay switching panel  110  and a terminal block cable termination panel  111  are connected as part of the cabinets power supply system. The cabinet is supplied with a twelve-port communications hub  112  which is preferably  100  base T. The VME rack  113  holds the plurality of control cards which comprise the processors for the real time controller  76 . The cabinet also has a roll out keyboard  114  for holding a keyboard functioning as the MMI  70 . A computer monitor  115  serves as the GUI for the MMI  70 . Finally, the cabinet includes an indicator/switching panel  116  with a plurality of LED&#39;s  118 , other indicators  122  and switches  118 . FIGS. 13 and 14 provide front and side sectional views of these cabinet components in their preferred embodiment. Although a single controller  76  is shown and described in the preferred embodiment, it should be understood that the present invention contemplates the use of multiple controllers  76  within the client-server architecture of the CSA of the present invention for larger numbers of components. Ideally, multiple controllers  76  would provide the CSA with a further level of redundancy in the event of a failure of one or more of the controllers  76 . Appropriate synchronization software to allow for coordination of such multiple controllers can also communicate over the CSA of the present invention. Alternatively, controller  76  could be expanded to accommodate the required number of connection ports as necessary to support a larger number of components  62 .  
         [0057]    [0057]FIG. 13 shows a close-up view of the VME rack  113 . The VME rack holds several Motorola PowerPC processor cards. Alternatively, Intel processor cards (x 86  and various version of Pentium processors) or RISC  4600  and RISC  4700  cards can also be used to produce satisfactory results. Each card is runs on the pSOS real time operating system and employs MatrixX software to communicate with an armament component. FIG. 14 shows the internal and external cables for the VME rack  113 .  
         [0058]    Slots # 1   131  and # 2   132 , shown in FIGS. 15 and 16 contain CPU/COMM cards such a controller card MVME  2600  available from Motorola. The CPU/COMM cards  131 ,  132  also include a transition module  134  that plugs into the cards. The Transition module as shown in FIGS. 17 and 18 has a plurality of serial ports  140  and parallel ports  138  for connecting to various devices, and also a  100  base T connection for connecting to the intranet local area network (LAN). Using TCP/IP the CPU&#39;s  131 ,  132  can communicate with all of the other components in the system.  
         [0059]    In slot  3  of the VME rack  113  is a digital-to-analog converter card  142  as shown in FIGS. 19 and 20. The DAC card  142  preferably includes two DAC circuit cards that perform the necessary transformation of data signals  66  to control signals  68  to provide, for example, position command signals to the servo  74  or receive position feedback signals from the components  62 .  
         [0060]    In slot  4  of the VME rack  113  is the Quad Serial I/O ports card  144  to the MIL-STD 1553 Bus  66 , as shown in FIGS. 21 and 22. Preferably, the I/O port cards  144  are configurable to operate RS232C, RS422a, RS423 or RS485 ports. In slot  5  of the VME rack  113  is the bus converter card  146 , as shown in FIGS. 23 and 24. In this embodiment, the bus converter card  146  converts the MIL-STD 1553 Bus used for the data connections  66  to the VME Bus used within the VME rack  113 .  
         [0061]    In slot  6  of the VME rack  113  is the Resolver to Digital Card  148 , as shown in FIGS. 25 and 26. The resolver is a position sensor for a weaponry component. For example, by measuring the electric signal produced by the stator angle with respect to the commutator of a motor, the resulting electric signal can be measured to determine the position of a maneuvering motor for the armament components. The R-to-D card  148  takes the stator signals from the elevation and train resolvers of a gun controller  80 ,  82  and converts them to digital, then feeds them to the DAC card  142  for the position feedback signal generation supplying the servo amplifier  74 . The R-to-D card  148  also generates a 2.6 KHZ 5 Volt signal to supply the resolver motors. In slot  7  of the VME rack  113  is the Digital to Resolver card  150 , as shown in FIGS. 27 and 28. The D-to-R card  150  essentially performs the opposite functions of the R-to-D card  148  by converting appropriate digital signals to the necessary analog levels for supplying control signals to the resolvers.  
         [0062]    A portion of the disclosure of this invention is subject to copyright protection. The copyright owner permits the facsimile reproduction of the disclosure of this invention as it appears in the Patent and Trademark Office files or records, but otherwise reserves all copyright rights.  
         [0063]    Although the preferred embodiment of the automated system of the present invention has been described, it will be recognized that numerous changes and variations can be made and that the scope of the present invention is to be defined by the claims.