At the end of Part II in our H∞ design trilogy, we addressed the disturbance attenuation problem when the torque disturbance input affected the plant output significantly. A straightforward way to deal with this problem is to push the sensitivity weight further down in low-frequency region. This is not easy to do for a non-minimumphase plant, especialy when a closed-loop bandwidth constraint is also imposed. In the discussion below we propose an already known scheme to tackle the tracking and disturbance attenuation problems separately.
H-infinity synthesis with Scilab Part II : Single-loop Tracking Example
From the problem setup discussion in Part I, we proceed with an example on tracking problem using S/T mixed-sensitivityH∞ synthesis. The plant used in this example is a mechanical revolute joint driven by brushless servomotor in Figure 1, consisiting of joint, drive, and motor dynamics, together with a joint resonance model. This is quite a complicated, non-minimum phase plant that results in a challenging control problem.
After the introduction by George Zames in the late 1970’s, H∞ control has become an active research, with tons of articles published each year. Despite that academic growth, Its usage in practical industry remains minimal. While most control design software has toolbox functions for H∞ synthesis and beyond, the user-unfriendliness of these functions are well-known. It’s fair to say, if you don’t know much about robust control theory, leave them alone. Anyway, in this article we discuss introductory H∞ synthesis in a nutshell, and provide examples using functions and features available in Scilab/Xcos, an open-source alternative to MATLAB/Simulink.
To narrow down the scope, we focus on a particular H∞ scheme called “mixed-sensitivity approach” in . Controller synthesis is formulated as closed-loop transfer function shaping problems, mostly the sensitivity S, complementary sensitivity T, or some combination like KS, where K is the resulting stabilizing controller, hence the name “mixed-sensitivity.” The discussion is restricted to SISO (single-input/single-output) systems. Moreover, we only show the how-to’s and omit the underlying math/theory to save space. Please consult robust control texts xuch as , my all-time favorite on the subject.