Abstract:
A computer program product for simulating the performance of an electrical power system. The computer program product consists of a computer-readable medium containing an electrical power system model module, an input module and a simulation engine. The electrical power system model module contains one or more electrical power system models consisting of interrelated blocks and connections. The blocks represent elements comprising electrical circuits, electromechanical devices, and measurement devices, and the relationships between said blocks and said connections in said model are read-only with respect to an end user. The input module is operable on a computer to allow an end user to specify at least one characteristic for at least one said block in said model. The simulation engine is operable on a computer to simulate the performance of an electrical power system represented by the model using the specified block characteristics.

Description:
BACKGROUND OF THE INVENTION  
         [0001]    1. Field of the Invention  
           [0002]    The present invention relates generally to simulation. More particularly, the present invention relates to simulation of the performance of electrical power systems.  
           [0003]    2. Description of the Related Art  
           [0004]    Across disciplines such as economics, engineering, and environmental science, experts are skeptical of the sustainability of our current means of generating, distributing, and using electrical power. In response, both electrical power producers and consumers are contemplating alternatives to conventional electrical power grids. Implementation of distributed power generation has attracted substantial attention as one alternative.  
           [0005]    In a typical distributed power generation configuration, a local source, such as a wind driven micro-turbine, a fuel cell, or a low-emission combustion engine/permanent magnet generator combination is connected to both an aggregate local load and the conventional power grid. When local load demand exceeds the local source supply, the remaining needed electrical power is drawn from the grid. When local supply exceeds local demand, excess power is distributed back to the grid.  
           [0006]    Local sources, such as fuel cells, typically provide electrical power that must be conditioned before being supplied to a load or connected to a conventional power grid. Inverters and associate associated power electronics for control, along with transformers for voltage conversion, impedance matching, and isolation are typically used to condition locally generated power. FIG. 1 generally illustrates the relationship between a local source, a local load, the grid, and conditioning elements.  
           [0007]    It is often desirable to evaluate the performance of an alternative electrical power system. Public utility companies understandably desire to control the nature of devices connected to the grid in order to maintain a quality of service, i.e. to prevent interruptions, limit transients, and maintain efficiency. Electrical power consumers, especially large industrial or institutional users, desire to maintain efficient use of electrical power.  
           [0008]    One option for evaluating the performance of an alternative electrical power system is to install the system and collect empirical data through instrumentation. This option is typically impractical from cost, schedule, and performance perspectives. Reliance on manufacturer&#39;s specifications and static analysis is another option. However, such an approach typically does not provide a satisfactory level of confidence in the results.  
           [0009]    Simulation using tools such as Simulink™ (an interactive computer program product for modeling, simulating, and analyzing dynamic systems) provide another option for evaluating the performance of an alternative electrical power system. This option mitigates the cost, schedule and performance drawbacks of collecting empirical data and produces results with a higher degree of confidence than static analysis. However, such sophisticated programs typically require a working knowledge of complex modeling and simulation techniques, along with fluency in the program itself and knowledge of the concepts of the problem domain under consideration, i.e., electrical power generation and distribution.  
           [0010]    Considering these needs and drawbacks, it is desirable to provide a system and method that facilitates evaluation of electrical power systems containing alternate sources without the cost, schedule, and performance drawbacks associated with collection of data through empirical methods; with a higher degree of confidence in the results that that available through static analysis; and requiring less end user knowledge of details of sophisticated simulation software.  
         SUMMARY OF THE INVENTION  
         [0011]    A computer program product for simulating the performance of an electrical power system. The computer program product consists of a computer-readable medium containing an electrical power system model module, an input module and a simulation engine. The electrical power system model module contains one or more electrical power system models consisting of interrelated blocks and connections. The blocks represent elements comprising electrical circuits, electromechanical devices, and measurement devices, and the relationships between blocks and connections the model are read-only with respect to an end user. The input module is operable on a computer to allow an end user to specify at least one characteristic for at least one block the model. The simulation engine is operable on a computer to simulate the performance of an electrical power system represented by the model using the specified block characteristics. 
       
    
    
     DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS  
       [0012]    [0012]FIG. 1 illustrates the relationship between a source, inverter module, transformer, load, and grid as represented in the models of the present invention.  
         [0013]    [0013]FIG. 2 is a block diagram that illustrates a computer system upon which an embodiment of the present invention may be implemented.  
         [0014]    [0014]FIG. 3 is a block diagram illustrating the combined grid and stand-alone electrical power system model underlying preferred embodiments of the present invention.  
         [0015]    [0015]FIG. 4 is a block diagram illustrating the grid electrical power system model underlying preferred embodiments of the present invention.  
         [0016]    [0016]FIG. 5 is a block diagram illustrating the stand-alone electrical power system model underlying preferred embodiments of the present invention.  
         [0017]    [0017]FIG. 6 is an illustration of the link between various windows of a preferred embodiment of the present invention.  
         [0018]    [0018]FIG. 7 is an illustration of a configuration choice window of the present invention.  
         [0019]    [0019]FIG. 8 is an illustration of a principle window of the present invention.  
         [0020]    [0020]FIG. 9 a  is an illustration of a source setting window of the present invention.  
         [0021]    [0021]FIG. 9 b  is an illustration of a source details window of the present invention.  
         [0022]    [0022]FIG. 10 is an illustration of an inverter setting window of the present invention.  
         [0023]    [0023]FIG. 11 is an illustration of a transformer setting window of the present invention.  
         [0024]    [0024]FIG. 12 is an illustration of a grid setting window of the present invention.  
         [0025]    [0025]FIG. 13 is an illustration of a load setting window of the present invention.  
         [0026]    [0026]FIG. 14 is an illustration of a motor setting window of the present invention.  
         [0027]    [0027]FIG. 15 is an illustration of a motor fault setting window of the present invention as an example of a general fault setting window of the present invention.  
         [0028]    [0028]FIG. 16 is an illustration of a motor isolation contactor window of the present invention as an example of a general switch/breaker/contactor setting window of the present invention.  
         [0029]    [0029]FIG. 17 is an illustration of a simulation window of the present invention.  
         [0030]    [0030]FIGS. 18 and 19 are illustrations of scope windows of the present invention.  
     
    
     DETAILED DESCRIPTION OF THE INVENTION  
       [0031]    As required, detailed embodiments of the present invention are disclosed herein; however, it is to be understood that the disclosed embodiments are merely exemplary of the invention that may be embodied in various and alternative forms. The figures are not necessarily to scale, some features may be exaggerated or minimized to show details of particular components. Therefore, specific structural and functional details disclosed herein are not to be interpreted as limiting, but merely as a basis for the claims and as a representative basis for teaching one skilled in the art to variously employ the present invention.  
         [0032]    [0032]FIG. 2 is a block diagram that illustrates a computer system  100  upon which an embodiment of the invention may be implemented. Computer system  100  includes a bus  102  or other communication mechanism for communicating information, and a processor  104  coupled with bus  102  for processing information. Computer system  100  also includes a main memory  106 , such as a random access memory (RAM) or other volatile storage device, coupled to bus  102  for storing information and instructions to be executed by processor  104 . Main memory  106  also may be used for storing temporary variables or other intermediate information during execution of instructions to be executed by processor  104 . Computer system  100  further includes a read only memory (ROM)  108  or other non-volatile storage device coupled to bus  102  for storing static information and instructions for processor  104 . A storage device  110 , such as a magnetic disk or optical disk, is provided and coupled to bus  102  for storing information and instructions.  
         [0033]    Computer system  100  may be coupled via bus  102  to a display  112 , such as a cathode ray tube (CRT), for displaying information to a computer user. An input device  114 , including alphanumeric and other keys, is coupled to bus  102  for communicating information and command selections to processor  104 . Another type of user input device is cursor control  116 , such as a mouse, a trackball, or cursor direction keys for communicating direction information and command selections to processor 104  and for controlling cursor movement on display  112 . This input device typically has two degrees of freedom in two axes, a first axis (e.g., x) and a second axis (e.g., y), that allows the device top specify positions in a plane.  
         [0034]    One embodiment of the invention is related to the use of computer system  100  for simulating the performance of an electrical power system containing a non-grid source, e.g., fuel cells, or a turbine generator. According to one embodiment of the invention, simulation is provided by computer  100  in response to processor  104  executing one or more sequences of one or more instructions contained in main memory  106 . Such instructions may be read into main memory  106  from another computer readable medium, such as a storage device  110 . Execution of the sequences of instructions contained in main memory  106  causes processor  104  to perform the process steps described herein. One or more processors in a multi-processing arrangement may also be employed to execute the sequences of instructions contained in main memory  106 . In alternative embodiments, hardwired circuitry may be used in place of or in combination with software instructions to implement the invention. Thus, embodiments of the invention are not limited to any specific combination of hardware circuitry and software.  
         [0035]    The term “computer-readable medium” as used herein refers to any medium that participates in providing instructions to processor  104  for execution. Such a medium may take many forms, including but not limited to, non-volatile media, volatile media, and transmission media. Non-volatile media include, for example, optical or magnetic disks, such as storage device  110 . Volatile media include dynamic memory, such as main memory  106 . Transmission media include coaxial cables, copper wire and fiber optics, including the wires that comprise bus  102 . Transmission media can also take the form of acoustic or electromagnetic waves, such as those generated during radio frequency (RF) and infrared (IR) data communications. Common forms of computer-readable media include, for example, a floppy disk, a flexible disk, hard disk, magnetic tape, any other magnetic medium, a CD-ROM, DVD, any other optical medium, punch cards, paper tape, any other physical medium, with patterns of holes, a RAM, a PROM (programmable ROM), and EPROM (electronically PROM) a FLASH-EPROM, any other memory chip or cartridge, a carrier wave, or any other medium from which a computer can read.  
         [0036]    Various forms of computer-readable media may be involved in carrying one or more sequences of one or more instructions to processor  104  for execution. For example, the instructions may initially be borne on a magnetic disk of a remote computer. The remote computer can load instructions into its dynamic memory and send the instructions over a telephone line using a modem. A modem local to computer system  100  can receive the data on the telephone line and use an infrared transmitter to convert the data to an infrared signal. An infrared detector coupled to bus  102  can receive the data carried in the infrared signal and place the data on bus  102 . Bus  102  carries the data to main memory  106 , from which processor  104  retrieves and executes the instructions. The instructions received by main memory  106  may optionally be stored on storage device  110  either before or after execution by processor  104 .  
         [0037]    Computer system  100  also includes a communication interface  118  coupled to bus  102 . Communication interface  118  provides a two-way data communication coupling to a network link  120  that is connected to a local network  122 . For example, communication interface  118  may be an integrated services digital network (ISDN) card or modem to provide a data communication connection to a corresponding type of telephone line. As another example, communication interface  118  may be a local area network (LAN) card to provide a data communication connection to a compatible LAN. Wireless links may also be implemented. In any such implementation, communication interface  118  sends and receives electrical, radio frequency, or optical signals that carry digital streams representing various types of information.  
         [0038]    Network link  120  typically provides data communication through one or more networks to other data devices. For example, network link  120  may provide a connection through local network  122  to a host computer  124  or to data equipment operated by an Internet Service Provider (ISP)  126 . ISP  126  in turn provides data communication services through the worldwide packet data communication network, now commonly referred to as the Internet  128 . Local network  122  and Internet  128  both use electrical, radio frequency, or optical carriers to carry data streams. The signals through the various networks and the signals on the network link  120  and through communication interface  118 , which carry the data to and from computer system  100 , are exemplary forms of carrier waves transporting the information.  
         [0039]    Computer system  100  can send messages and receive data, including program code, through the network(s), network link  120 , and communication interface  118 . In the Internet example, a server  130  might transmit a requested code for an application program through Internet  128 , ISP  126 , local network  122 , and communication interface  118 . In accordance with the invention, one such downloaded application provides for simulation of the performance of an electrical power system as described herein. The received code may be executed by processor  104  as it is received, and/or stored in a storage device  110 , or other non-volatile storage for later execution. In alternative embodiments of the invention only that portion of the instructions necessary to interface the computer system  100  to the server  130  or host  124  is downloaded to the computer system, i.e., in an Internet Application Server Provider (ASP) configuration, or a thin-client configuration.  
         [0040]    Referring to FIG. 3 a , an electrical power system model topology 300 built in Simulink™ using basic blocks, configurable subsystems, and elements from Simulink™ power system blockset is shown. A description of those properties salient to the present invention follows.  
         [0041]    A block represents an elementary dynamic system; it includes one or more of the following: a set of inputs, a set of states, and a set of outputs. Each output is a function of time, the associated inputs, and the states of the block. The specific function that relates a block&#39;s output to its inputs, states, and time depends on the type of the block. A block in a model is a specific instance of a block type.  
         [0042]    In general, Simulink™ configurable subsystems enable a user to define a block to represent any one of a plurality of blocks contained in a specified library. A dialog box allows the user to specify a particular block and values of the parameters of the specified block. In the present invention, an end user (as distinguished form a user with access to the underlying model topology) will not have access to the Simulink™ dialog box, but will be restricted to choosing a preformatted block and adjusting parameters within fixed ranges. The Simulink™ power blockset contains pre-configured blocks representing common components and devices found in electrical power networks.  
         [0043]    Preferred embodiments of the present invention offer an end-user the choice of one of three models: a combined model  300  as illustrated in FIG. 3; a stand-alone model  400  as illustrated in FIG. 4; and a grid-only model  500  as illustrated in FIG. 5. The combined mode will also be referred to as the “grid &amp; stand alone” mode. The stand-alone model  400  and grid-only model  500  are subsets of the combined model  300 . As such, the following description addressing the combined model  300  also applies to the stand-alone model  400  and the grid-only model where those models contain elements found in the combined model  300 .  
         [0044]    The combined model  300 , illustrated in FIG. 3, contains the following blocks: source  310 ; inverter module  312 ; transformer  314 ; grid  320 ; load  330 ; motor  340 ; various fault blocks  350  (for simulating a fault at various points in the modeled system); various isolation switches, circuit breakers, and contactors i.e., source isolation contactor  361 , grid isolation breaker  362 , motor isolation breaker  363 ; and various measurement blocks, i.e., transformer measurement block  371 , grid measurement block  371 , and load measurement block  373 ; various scopes, i.e., general scope  381 , current scope  382 , voltage scope  383 , power and motor speed scope  384 ; various input blocks, i.e., source preference block  391 , voltage reference block  392 , isolation contactor block  393 , mechanical torque block  394 , grid control block  395 , grid frequency block  396 , grid amplitude block  397 , and grid disphasage block  398   
         [0045]    [0045]FIG. 6 illustrates one possible set of relationships between those windows available to an end user through the display  102 . Each window and the functionality it provides will now be described.  
         [0046]    In the present invention one or more electrical power system models are created and stored on computer-readable media. In preferred embodiments of the present invention, three models (combined  300 , stand-alone  400 , and grid-only  500 ) are built from interrelated blocks and connections. These models are not accessible to an end user. Instead, the invention prompts an end user, through an input module configuration choice window  700 , to select one of the three model configurations for simulation as illustrated in FIG. 7. An end user may select a particular model configuration by selecting the radiobutton  701 ,  702 ,  703  most proximate to the title of the desired model configuration.  
         [0047]    The M-file associated with window  700  includes the following instructions  
         [0048]    Launch  
         [0049]    Open the figure  
         [0050]    Callbacks  
         [0051]    Radiobutton 1 :  
         [0052]    Open the associated model: epc_model_grid_alone.mdl  
         [0053]    Set the variable “modechoice” to “grid” 
         [0054]    Open the Principal window  
         [0055]    Radiobutton 2 :  
         [0056]    Open the associated model: epc_model_SA_alone.mdl  
         [0057]    Set the variable “modechoice” to “SA” 
         [0058]    Open the Principal window  
         [0059]    Radiobutton 3 :  
         [0060]    Open the associated model: epc_model.mdl  
         [0061]    Set the variable “modechoice” to “GridSA” 
         [0062]    Open the Principal window  
         [0063]    [0063]FIG. 8 illustrates the principal window  800  of preferred embodiments of the present invention. The principal window  800  provides an end user with a summary view of current simulation parameters. Key model blocks are represented as subwindows, some including pull-down menus or checkboxes as indicated in FIG. 8 and described herein.  
         [0064]    The power source subwindow  809  contains a pull-down menu  809   a  for selecting one power source from among those sources available in the power source configurable subsystem block  310 . In the preferred embodiment, power source choices include a direct current (DC) source, a 3-phase alternating current (AC) source and rectifier, a permanent magnet generator (PMG) and rectifier, and a turbine linked to a PMG and rectifier. The power source subwindow  809  also contains a summary of the current parameter values for the currently selected power source subsystem. Selecting within the power source subwindow  809 , e.g., by using the input device  114  or cursor control  116  will open the source setting window  900  illustrated in FIG. 9 a  and described below. Selection is accomplished typically by right clicking on the text zone.  
         [0065]    The inverter module subwindow  810  contains a summary of the current parameter values for the inverter module configurable subsystem block  312 . Selecting within the inverter module subwindow  810 , e.g., by using the input device  114  or cursor control  116  will open the inverter setting window  1000  illustrated in FIG. 10 and described below.  
         [0066]    The transformer subwindow  811  contains a pull-down menu  811   a  for selecting transformer from among those sources available in the transformer configurable subsystem block  314 . In the preferred embodiment, transformer choices include combinations of delta, Y, and Y with neutral. The transformer subwindow  811  also contains a summary of the current parameter values for the currently selected transformer. Selecting within the transformer subwindow  811 , e.g., by using the input device  114  or cursor control  116  will open the transformer setting window  1100  illustrated in FIG. 11 and described below.  
         [0067]    The grid subwindow  812  contains a summary of the current parameter values for the grid block  320 . Selecting within the grid subwindow  812 , e.g., by using the input device  114  or cursor control  116  will open the grid setting window  1200  illustrated in FIG. 12 and described below.  
         [0068]    The load subwindow  813  contains a pull-down menu  813   a  for selecting load configuration from among those load configurations available in the load configurable subsystem block  330 . In the preferred embodiment, load choices include Y without ground, Y with ground, Delta. The load subwindow  813  also contains a summary of the current parameter values for the currently selected transformer. Selecting within the load subwindow  813 , e.g., by using the input device  114  or cursor control  116  will open the load setting window  1300  illustrated in FIG. 13 and described below.  
         [0069]    The motor subwindow  814  contains a summary of the current parameter values for the motor block  340 . The motor subwindow  814  also contains a checkbox  814 a for connecting or disconnecting the motor block  340 . Selecting within the motor subwindow  814 , e.g., by using the input device  114  or cursor control  116  will open the motor setting window  1400  illustrated in FIG. 14 and described below.  
         [0070]    The grid fault subwindow  815  contains a summary of the current parameter values for the grid fault block  350 . Selecting within the grid fault subwindow  815 , e.g., by using the input device  114  or cursor control  116  will open the grid fault setting window  1500  illustrated in FIG. 15 and described below. Similar fault subwindows may also represent other fault blocks.  
         [0071]    Subwindows representing isolation switches (window  816 ), grid breakers (window  817 ), and motor circuit breakers (window  818 ) are also included in the principal window  800 . Selecting within any of these windows, e.g., by using the input device  114  or cursor control  116  will open the appropriate setting window for control of switch, breaker, or contact control as known in the art.  
         [0072]    In addition, principal window  800  allows an end user several control choices leading to other interactive windows. An end user may return to the configuration choice window  700  by selecting the “Change the EPC Mode” pushbutton  819 . An end user may invoke a window to load a previously saved configuration by selecting the “Load a configuration” pushbutton  820 . An end user may invoke a window to save the current configuration by selecting the “Save the configuration” pushbutton  821 . The illustrated embodiment allows an end user to proceed directly to a simulation window by selecting the “Simulation” pushbutton  822 , or to exit the program by selecting the “Exit” pushbutton  823 .  
         [0073]    The M-file associated with window  800  and it subwindows includes the following instructions:  
         [0074]    Launch  
         [0075]    Open the figure  
         [0076]    Set the parameter text, Popup menu and the visibility for each block:  
         [0077]    Source  
         [0078]    Inverter  
         [0079]    Transformer  
         [0080]    Grid  
         [0081]    Load  
         [0082]    Motor  
         [0083]    Callbacks  
         [0084]    For the Source block:  
         [0085]    Popupmenu (SourceMenu):  
         [0086]    Change the block in the model according to the new choice  
         [0087]    Set the parameters values in the Text uicontrol according to the block choice (setstring.m)  
         [0088]    Open the Source setting window (fig_source_model.m)  
         [0089]    StaticText (SourceText 1  or SourceText 2 ): buttonDownFunction  
         [0090]    Open the Source setting window (fig_source_model.m)  
         [0091]    For the Inverter block:  
         [0092]    StaticText (InverterText 1  or InverterText 2 (later)): buttonDownFunction  
         [0093]    Open the Inverter setting window (fig_EPC_model.m)  
         [0094]    StaticText (InvertText 2 ): buttonDownFunction  
         [0095]    Open a message box: Protection not available for this version  
         [0096]    For the Transformer block:  
         [0097]    Popupmenu (TransfoMenu):  
         [0098]    Change the widding parameter in the model according to the new choice  
         [0099]    Set the parameters values in the Text uicontrol according to the block choice (setstring.m)  
         [0100]    Open the Transformer setting window (fig_transfo_model.m)  
         [0101]    StaticText (TransfoText 1  or TransfoText 2 ): buttonDownFunction  
         [0102]    Open the Transformer setting window (fig_transfo_model.m)  
         [0103]    For the Grid block: (if Grid Mode or Grid &amp; SA Mode)  
         [0104]    StaticText (GridText 1  or GridText 2 ): buttonDownFunction  
         [0105]    Open the Grid setting window (fig_grid_model.m)  
         [0106]    For the Load block:  
         [0107]    Popupmenu (LoadMenu):  
         [0108]    Change the block in the model according to the new choice  
         [0109]    Set the parameters values in the Text uicontrol according to the block choice (setstring.m)  
         [0110]    Open the Load setting window (fig_load_model.m)  
         [0111]    StaticText (LoadText 1  or LoadText 2 ): buttonDownFunction  
         [0112]    Open the Load setting window (fig_load_model.m)  
         [0113]    For the Motor Block:  
         [0114]    Popupmenu (MotorMenu):  
         [0115]    Change the block in the model according to the new choice  
         [0116]    Set the parameters values in the Text uicontrol according to the block choice (setstring.m)  
         [0117]    Open the Motor setting window (fig_motor_model.m)  
         [0118]    StaticText (MotorText 1  or MotorText 2 ): buttonDownFunction  
         [0119]    Open the Motor setting window (fig_motor_model.m)  
         [0120]    For the Fault blocks:  
         [0121]    StaticText (FaultLoad(or Grid) 1 ):  
         [0122]    Set the parameter “faultchoice” 
         [0123]    Open the Fault setting window (fig_fault_model.m)  
         [0124]    For the Contactor Isolation or Motor Connection or Grid connection block (when they are visible):  
         [0125]    StaticText  
         [0126]    Set the parameter “breakerchoice” 
         [0127]    Open the Breaker setting window (fig_breaker_model.m)  
         [0128]    Others:  
         [0129]    Pushbutton 1  (Change the mode):  
         [0130]    Open a message box to warn the user he will lose his setting and ask me if he wants to save them  
         [0131]    Close the current model  
         [0132]    Open the “fig_choice_mode” window (fig_choice_mode.m)  
         [0133]    Pushbutton 2  (Load a configuration):  
         [0134]    Open the dialog window with the arguments: pos and load_file (filedlg.m)  
         [0135]    Pushbutton 3  (Save a configuration):  
         [0136]    Open the dialog window with the arguments: pos and save_file (filedlg.m)  
         [0137]    Pushbutton 4  (Simulation):  
         [0138]    Open the Simulation window with the arguments: pos and load_file (filedlg.m)  
         [0139]    The source setting window  900 , illustrated in FIG. 9 a , allows a user to set a variety of source parameters by direct text entry, e.g., editbox  901  or through use of a slider bar  902 . The user may also save the current configuration or load a saved configuration at this and subsequent windows by selecting the appropriate button e.g.,  903 ,  904 . Upon selecting “Load a configuration,” e.g.,  903  or “Save the configuration,” e.g.,  904 , the user is prompted for file information regarding the configuration to be loaded or saved. Selecting within the source setting window  900  is by using the input device  114  or cursor control  116 . The M-file associated with window  900  includes the following instructions.  
         [0140]    Launch  
         [0141]    Open the figure  
         [0142]    Set the Popupmenu according to the block choice in the model  
         [0143]    Set the text, the EditBox and the slider, the visibility for each group according to the source choice and the parameter value (SetEditBox.m):  
         [0144]    Voltage: Amplitude (V) or Peak Amplitude, Speed Reference, Power Reference  
         [0145]    Frequency  
         [0146]    Callbacks  
         [0147]    Pushbutton 1  (Load a configuration):  
         [0148]    Open the dialog window with the arguments: pos and load_file (filedlg.m)  
         [0149]    Pushbutton 2  (Save a configuration):  
         [0150]    Open the dialog window with the arguments: pos and save_file (filedlg.m)  
         [0151]    Pushbutton 3  (OK):  
         [0152]    Validation that sets the model parameters.  
         [0153]    Load the block choice  
         [0154]    Set the model parameters according to the block choice (epc_model_*.mdl)  
         [0155]    Set the parameters values in the Text uicontrol in the principal window according to the block choice (setstring.m)  
         [0156]    Close the modification window  
         [0157]    Popupmenu:  
         [0158]    Change the block in the model according to the new choice  
         [0159]    Set the parameters values in the Text uicontrol (setstring.m)  
         [0160]    Set the parameters values in the Edit Box and the Sliders according to the block choice (SetEditBox.m)  
         [0161]    Edit box and sliders:  
         [0162]    the same approach for the 2 groups:  
         [0163]    Edit box:  
         [0164]    Test if the values input is valid: numeric and not out of range  
         [0165]    According to the test:  
         [0166]    Yes: set the slider  
         [0167]    No: Error Dialog Box  
         [0168]    Slider:  
         [0169]    Set the Edit Box value according to the slider value  
         [0170]    The source details window  910 , illustrated in FIG. 9 b , allows a user to set further source details, again, by use of direct text entry, e.g., editbox  911  or through use of a slider bar  912 . The M-file associated with window  910  includes the following instructions.  
         [0171]    Launch  
         [0172]    Open the figure  
         [0173]    Set the text, the EditBox and the slider for each group according the parameter value (SetEditBox.m)  
         [0174]    Callbacks  
         [0175]    Pushbutton 1  (Load . . . ),  2  (Save . . . ),  3  (OK):  
         [0176]    See fig_source_model  
         [0177]    EditBox and Slider (the 5 groups)  
         [0178]    See fig_source_model  
         [0179]    The inverter setting window (FIG. 10, 1000), transformer setting window (FIG. 11, 1100), grid setting window (FIG. 12, 1200), load setting window (FIG. 13, 1300), and motor setting window (FIG. 14, 1400) each operate in a similar fashion. The M-files associated with these windows contains the following code.  
         [0180]    Inverter Settings  
         [0181]    Launch  
         [0182]    Open the figure  
         [0183]    Set the text, the EditBox and the slider for each group according the parameter value and the block choice (SetEditBox.m)  
         [0184]    Callbacks  
         [0185]    Pushbutton 1  (Load . . . ),  2  (Save . . . ),  3  (OK):  
         [0186]    See fig_source_model  
         [0187]    EditBox and Slider (the 8 groups)  
         [0188]    See fig_source_model  
         [0189]    Transformer settings  
         [0190]    Launch  
         [0191]    Open the figure  
         [0192]    Set the text, the EditBox and the slider for each group according the parameter value and the block choice (SetEditBox.m)  
         [0193]    Callbacks  
         [0194]    Pushbutton 1  (Load . . . ),  2  (Save . . . ),  3  (OK):  
         [0195]    See fig_source_model  
         [0196]    EditBox and Slider (the 10 groups)  
         [0197]    See fig_source_model  
         [0198]    Popupmenu:  
         [0199]    See fig_source_model  
         [0200]    Here, it&#39;s not a block choice to change, but 2 parameters to set: connection for winding  1  &amp;  2   
         [0201]    Grid Settings  
         [0202]    Launch  
         [0203]    Open the figure  
         [0204]    Set the text, the EditBox and the slider for each group according the parameter value (SetEditBox.m)  
         [0205]    Callbacks  
         [0206]    Pushbutton 1  (Load . . . ),  2  (Save . . . ),  3  (OK):  
         [0207]    See fig_source_model  
         [0208]    EditBox and Slider (the 12 groups)  
         [0209]    See fig_source_model  
         [0210]    Popupmenu (rank and sequence):  
         [0211]    No callback because the parameters values are set in the model when the use press the OK  
         [0212]    Load Settings  
         [0213]    Launch  
         [0214]    Open the figure  
         [0215]    Set the text, the EditBox, the slider and the visibility for each group according the parameter value and the block choice (SetEditBox.m)  
         [0216]    Callbacks  
         [0217]    Pushbutton 1  (Load . . . ),  2  (Save . . . ),  3  (OK):  
         [0218]    See fig_source_model  
         [0219]    EditBox and Slider (the 5 groups)  
         [0220]    See fig_source_model  
         [0221]    Popupmenu:  
         [0222]    See fig_source_model  
         [0223]    Motor Settings  
         [0224]    Launch  
         [0225]    Open the figure  
         [0226]    Set the text, the EditBox and the slider for each group according the parameter value (SetEditBox.m)  
         [0227]    Callbacks  
         [0228]    Pushbutton 1  (Load . . . ),  2  (Save . . . ),  3  (OK):  
         [0229]    See fig_source_model  
         [0230]    EditBox and Slider (the 11 groups)  
         [0231]    See fig_source_model  
         [0232]    EditBox alone ( 5 ):  
         [0233]    Check if the string is valid: numeric, good format, out of range? 
         [0234]    [0234]FIG. 15 is a motor fault window  1500 , illustrative of fault windows of the present invention in general. Through that window  1500 , an end user may select the specific phase or ground into which to introduce a fault. An end user may also indicate the transition time from active to not active fault status. The M-file associated with this window contains the following code.  
         [0235]    Launch  
         [0236]    Open the figure  
         [0237]    Set the title text, the EditBox and the checkbox according the parameter value (SetEditBox.m)  
         [0238]    Callbacks  
         [0239]    Pushbutton 1  (Load . . . ), 2  (Save . . . ),  3  (OK):  
         [0240]    See fig_source_model  
         [0241]    Checkbox  1 , 2 , 3 , 4 :  
         [0242]    No callback because the parameters values are set in the model when the use press the OK  
         [0243]    EditBox  1 ,  2 :  
         [0244]    Check if the string is valid: numeric, good format, out of range? 
         [0245]    [0245]FIG. 16 is a motor isolation contactor window  1600 , illustrative of contactor, isolation switch, and circuit breaker windows of the present invention in general. Through that window  1600 , an end user may select the characteristics of a contactor  361  or breaker  362 ,  363 . The M-file associated with this window contains the following code  
         [0246]    Launch  
         [0247]    Open the figure  
         [0248]    Set the title text, the EditBox and the sliders according the parameter value (SetEditBox.m)  
         [0249]    Callbacks  
         [0250]    Pushbutton 1  (Load . . . )  2  (Save . . . )  3  (OK):  
         [0251]    See fig_source_model  
         [0252]    EditBox  1 ,  2 :  
         [0253]    Check if the string is valid: numeric, good format, out of range? 
         [0254]    EditBox and Slider (the 2 groups)  
         [0255]    See fig_source_model  
         [0256]    Typically, after loading saved settings or entering settings through the previously described windows, an end user may invoke the simulation window  1700 , illustrated in FIG. 17. The Simulation window, through a combination of checkboxes and editboxes employed in the fashion describe above and illustrated in FIG. 17, offers an end user the opportunity to set simulation start and stop times, load an initial state for the system (typically a previously saved final state), and save output waveforms to a file. The M-file associated with this window contains the following instructions.  
         [0257]    Launch  
         [0258]    Open the figure  
         [0259]    Callbacks  
         [0260]    Pushbutton 1  (Load . . . ),  2  (Save . . . ):  
         [0261]    See fig_source_model  
         [0262]    EditBox  1 ,  2 :  
         [0263]    Check if the string is valid: numeric, good format, out of range? 
         [0264]    Checkbox:  
         [0265]    If selected, one Radio button must be activated  
         [0266]    If a Radio button is selected the associated checkbox is activated  
         [0267]    Radio buttons:  
         [0268]    Create a link between them: only one can be selected in each category: Initial and final State  
         [0269]    Toggle buttons:  
         [0270]    When you start a simulation, the buttons represent the simulation state  
         [0271]    Before beginning a simulation:  
         [0272]    Star button is up and enable.  
         [0273]    Pause button is up and disable  
         [0274]    Continue button is up and disable  
         [0275]    Stop button is up and disable  
         [0276]    When the simulation is running:  
         [0277]    Star button is pushed and disable.  
         [0278]    Pause button is up and enable  
         [0279]    Continue button is up and disable  
         [0280]    Stop button is up and enable  
         [0281]    When you do a pause:  
         [0282]    Star button is pushed and disable.  
         [0283]    Pause button is pushed and disable  
         [0284]    Continue button is up and enable  
         [0285]    Stop button is up and enable  
         [0286]    When you continue: same state than for running  
         [0287]    When the simulation stop: same state than before running  
         [0288]    Simulation output may be saved to a file in main memory  106  or on a storage device  110  for later plotting, or displayed to a display  112  in the manner depicted in FIGS. 18 and 19.  
         [0289]    The output illustrated in FIG. 18 is compiled from simulation voltage data collected at the model point corresponding to scope voltage  383  in FIG. 3. The voltages monitored by the illustrated preferred embodiment include the DC voltage generated by the EPC source 310 , the 3-phase AC voltage output by the inverter module  312 , the 3-phase voltage at the transformer  314  output, the 3-phase voltage at the load  330 , and the 3-phase voltage supplied at the grid  320 . For multiphase AC voltages (as well as multiphase AC currents), the values plotted for each phase are in different colors readily distinguishable from each other. The output illustrated in FIG. 19 b  are the corresponding current measurements through the same points in the circuit at which voltage is measure in FIG. 18.  
         [0290]    [0290]FIG. 19 a  illustrates the systems ability to output simulation results for power. The top scope compares the power at the output of the inverter module  312  to the power at the input of the inverter module  312 . The middle scope compares power at the output of the transformer  314  to the power consumed by the load  330  and the power supplied by the grid  320 . Finally, the bottom scope compares the selected motor speed with the simulated motor speed and the turbine speed.  
         [0291]    Illustrative embodiments of unique systems and methods for evaluating the performance of electrical power systems have been described herein. These and other variations, which will be appreciated by those skilled in the art, are within the intended scope of this invention as claimed below. As previously stated, detailed embodiments of the present invention are disclosed herein; however, it is to be understood that the disclosed embodiments are merely exemplary of the invention that may be embodied.