Skip to Main Content Skip to Search
Product Documentation

Finding an Operating Point

What Is an Operating Point?

An operating point of a system is a dynamic configuration that satisfies design and use requirements called operating specifications. You can express such operating specifications as requirements on the system state x and inputs u. It is not always possible to find a dynamic state that satisfies all operating conditions. Also, a system might have multiple operating points satisfying the same requirements.

Operating points are essential for designing and implementing system controllers. You can optimize a system at an operating point for performance, stability, safety, and reliability.

The most important and common type of operating point is a steady state, where some or all of the system dynamic variables are constant.

Using Operating Points for Linearization

An important motive for finding operating points is linearization, which determines the system response to small disturbances at an operating point. Linearization results influence the design of feedback controllers to govern dynamic behavior near the operating point. A full linearization analysis requires one or more system outputs, y, in addition to inputs.

See Linearizing at an Operating Point.

Example

A pilot flying an aircraft wants to find, for a given environment, a state of the aircraft engine and control surfaces that produces level, constant-velocity, and constant-altitude flight relative to the ground. The requirements of "level," "constant velocity," "constant altitude," and "relative to the ground" constitute operating specifications. This operating point is a steady state of the aircraft velocity, altitude, and orientation in space.

Some Operating Point Search Methods

You can provide predefined state and input vectors, x0 and u0, to specify an operating point. If you do not know an operating point in advance, you have two methods of identifying an operating point that satisfies operating specifications.

Time-Based Search

You can sometimes find operating points and steady states by trial and error while operating or simulating over some length of time and varying the system parameters, inputs, and initial conditions. In such a time-based approach, you isolate and study instants or intervals of time when a system satisfies the operating specifications. The system state and inputs under those conditions constitute the operating point, which you can also specify by an operating or simulation time.

State-Based Search

The alternative to trial-and-error searching for steady states is trimming. In this state-based approach, you bypass time-based simulation and find solutions for inputs, outputs, states, and state derivatives satisfying an operating specification. Trimming specifies inputs and part of a state and solves the system dynamics for the rest of the state. The resulting full state and input vectors, x0 and u0, constitute the operating point.

In general, there is no guarantee that such solutions, x0, exist for given operating specifications and inputs, u0.

Checking Discrete System States

An operating point includes the state of discrete system variables that change in a discontinuous way. In general, you cannot find these states by small, continuous changes of system variables. Such states usually require systematic exploration of the discrete variables over the full range of their possible values.

Finding Operating Points with Simscape, Simulink, and Related Products

You have a number of ways to find an operating point in a Simscape model. You can impose operating specifications and isolate operating points using Simscape and Simulink features.

To analyze operating points, you work with the full state vector of your model, which contains:

Whichever method that you choose to find an operating point, if you want to use it for linearization, you must save the operating point information in the form of an operating point object, a simulation time t0, or a state vector x0 and input vector u0.

Simulating in Time to Search for an Operating Point

One way to identify operating points is to simulate your model and inspect its state x and output y as a time series.

  1. In your Simscape model, set up sensor outputs for whatever block outputs you want to observe.

  2. Connect Scope blocks, To Workspace blocks, or both, to your Simscape block outputs to observe and record simulation behavior.

  3. In the Data Import/Export pane of your model Configuration Parameters settings, select the Time, States, and Output check boxes to record this simulation information in your workspace.

Using the Simscape Steady-State Solver

Most commonly, the operating point that you want is a steady state. The Simscape steady-state solver allows you to isolate steady states more exactly than you can with ordinary simulation. It is the only practical method to isolate steady states of a strongly nonlinear character. You can search for multiple steady states with the steady-state solver by varying the model inputs, parameters, and initial conditions.

Before simulation starts, the steady-state solver determines the model steady state x(t=0) = x0. In general, the system does not remain in this initial steady state x0 during simulation, because the system inputs u change independently, and the system has to respond by changing its state x(t).

To implement the steady-state solver:

  1. In each, some, or all of the physical networks in your Simscape model, open the Solver Configuration block.

  2. In each block dialog box, select the Start simulation from steady state check box.

  3. In the model Configuration Parameters settings, on the Data Import/Export pane, select the States check box to record the time series of x values in your workspace.

    If you also have input signals u in the model, you can capture those inputs by connecting To Workspace blocks to the input Simulink signal lines.

  4. Close these dialog boxes and start simulation.

The first vector of values x(t=0) that you capture during simulation reflects the steady state x0 that the Simscape solver identified.

Using Simulink Control Design Techniques to Find Operating Points

Simulink Control Design methods are state-based, giving you full access to state names and values, and allow you to impose operating specifications or use simulation snapshots. They work well for simple to moderately complex Simscape models. MathWorks does not recommend these methods for highly complex Simscape models.

To find operating points, it is simplest to use the operspec and findop functions, customizing where necessary. Create an operating specification object with operspec, then compute an operating point object with findop. The findop function attempts to find an operating point that satisfies the operating specifications and reports on its success or failure. If the search is successful, find_op returns state values satisfying the operating specifications.

You have several choices for operating specifications for the components of the state vector.

Assumed Operating ConditionOperating Specification
DefaultRequest that all state component derivatives be zero.
This is a steady-state for the whole model, not just a Simscape network within the model.
NondefaultRequest any value you want independently for each state component.
NondefaultRequest that a particular state component derivative be zero.
This is a steady-state condition for that state component.

Additional Simulink Control Design Methods.  You can also use the graphical user interface, through the model menu bar: Tools > Control Design > Linear Analysis. This interface gives you access to state, input, and output names, structure, and initial values.

For more details on the use of operating point specification objects, related functions, and the graphical interface, see the Simulink Control Design documentation.

Using Sources to Find Operating Points Not Recommended

You can impose an operating specification on part of a Simscape model by inserting source blocks from the Simscape Foundation Library. These impose specified values of system variables in parts of the model. You can simulate and save the state vector.

However, you cannot obtain an operating point for the original system (without the source blocks) by saving the state values from the model and then removing the source blocks. In general, the number, order, and identity of state components change after adding and removing Simscape blocks in a model.

Simulink trim Function Not Supported with Simscape Models

The Simulink trim function is not supported for models containing Simscape components.

  


Related Products & Applications

Learn more about Simulink through this collection of videos, articles, technical literature and the Getting Started with Simulink Guide.

 © 1984-2012- The MathWorks, Inc.    -   Site Help   -   Patents   -   Trademarks   -   Privacy Policy   -   Preventing Piracy   -   RSS