USC College of Engineering and Information Technology
USC main page
Model Sharing!

    
  USCThis site
 
Objectives
 

 

    Power Quality

    The resolution of power quality problems benefits from capabilities that go beyond those available in most network solver environments. Here we describe the specific capabilities of the VTB that support the solving of power quality problems, and explain why these capabilities are useful.

    Many power system solvers operate on a fixed time step. That is problematic with respect to resolving the time of switching events. The VTB allows variable time steps, which are chosen in a somewhat unique way. Rather than basing the choice of time step on the system eigenvalues, instead any model in the system can request either a) a time at which to end the next step, or b) a rollback of time to the last (valid) time step if an event is triggered that invalidates the current system output (failure to converge, threshold crossing, etc). Both of these capabilities are critical in a simulator for systems that incorporate power electronics in the power quality solution.

    Virtually every solution to a power quality problem involves power electronics and every solution to a power electronics problem involves a control system (usually digital). Hence a simulation or virtual prototyping environment for power quality solutions should allow seamless integration of the control design. Most definitely, the support for control design must not be an afterthought. The VTB supports control integration through a well-defined and very-complete multistep process.

    First, the hardware of the system model is completely defined by using standard components from the VTB model library. The control inputs are left open, awaiting definition of the control model. The control algorithm is then derived using whatever tools the control engineer prefers. Usually the control design is based on an approximate or perhaps a linearized model of the system, yet the real system is much more complex and contains nonlinearities and signficantly greater detail than would be used in the control design. With the VTB, it is possible to automate the process of system identification without resorting to extensive hand analysis or oversimplification of the system. Rather, the items in the Matlab Control System Toolbox and the System Identification Toolbox can be used to probe the system as it operates in order to “measure” the transfer function or other important quantities. These data can then be used to help formulate the control law.

    The next important step is to confirm that the designed control does indeed work when inserted into a high-fidelity model of the system. To do that, the controller is assembled in block diagram form using Simulink. For initial tests of the Simulink model of the controller, it is convenient to insert the control model into the system as a cosimulation object. This allows the control engineer to interactively refine the controller – the Simulink block diagram and/or the control coefficients can be changed on-line and the effects of those changes on the system dynamics can be directly and immediately observed without ever stopping the simulation.

    Once the controller algorithm is designed (plus or minus tolerances on the control parameters), the controller can be compiled into an executable object by using the Realtime Workshop of Matlab in conjunction with VTB’s tool for creating models from compiled Matlab code. The user can specify which parameters should be accessible to the user in the controller dialog box (if any parameters are intended to be user adjustable). The compiled controller model can now be shared with others who may be working on the system design and they do not need to own Matlab/Simulink in order to test how the controller works as modifications or additional detail are added to the system model. At this point, the control design path bifurcates depending on whether or not the designer intends to go directly to an embedded controller or first to a general purpose controller before committing to an embedded controller for production purposes.

    If the step through a general purpose controller (such as dSpace) is chosen then the Simulink model can be automatically compiled and downloaded directly to the controller card. Before connecting to real hardware, the particular software implementation of the controller can be tested against the virtual prototype of the system as it runs in VTB. This we call processor in the loop. Generally this test will NOT detect small timing errors because the system model is stepped slowly, one step after each instruction is executed on the digital control platform.

    When the control and system engineers are satisfied that the system has been thoroughly tested the next step can be taken – testing the controller as it is connected to the actual hardware. This test will reveal timing errors if there are any.

    Finally, if the power quality solution will be marketed as a commodity device, there is a need to transfer the control algorithm to an inexpensive embedded processor. This step is quite simple if a C-language compiler exists for the processor because the same code that was tested on the general purpose controller (which was the same as the code generated by Simulink) can be compiled for the embedded controller. The embedded controller can again be tested against the VTB system model (processor in the loop) before finally committing the design to production.

<< Back <<