The design criterion for the flight control system was robustness to modeling errors, sensor noise, and environmental disturbances. Performance is not necessary because the design assumes that the vehicle will always remain near hover. Limited computational ability of the flight computer and a delay inherent in the position gyro measurements are the principle design constraints.
The first phase of flight control development was to model the system. To this end, a simple model of helicopter dynamics was developed, and the physical parameters of our vehicle were empirically measured. This model was numerically linearized about hover using MATLAB. We concluded that the limited computational capability of the flight computer was insufficient to implement a multivariable controller. Therefore, we assumed that the effect of dynamic coupling was negligible at hover, and adopted an un-coupled compensator architecture, consisting of four independent channels (i.e., pitch, roll, heading, and altitude). There is an open-loop feed-forward term in the tail rotor controller which is proportional to changes in the collective command.
The pitch, roll, and yaw channels each take the form of an LQG compensator.
In the pitch axis, the plant is modeled as where is the longitudinal cyclic input and
is a white noise torque disturbance. The position and rate gyro
sensors are modeled as:
where and are white sensor noises and w is a drift
in the angular rate sensor, which is modeled as where
is white noise. The position gyros are internally drift corrected.
In state space form, the LQG compensator is:
where ,
is the state estimate, and is the error. was chosen
according to the steady state sensor and process noise covariances.
The bandwidth of the Kalman filter, approximately Hz., was chosen to
avoid the effect of a 0.4 sec. delay in the position gyro measurements.
The gains were chosen as an optimal controller, minimizing
a weighted sum of angular error, angular rate, and control changes.
The weights were tuned through test flights.
The compensator may be implemented, in state space form, as:
The z-transform of this continuous-time compensator runs on
the flight computer at Hz., requiring 26 multiplications and 17
additions in each channel, per iteration.
The altitude control loop uses a PID compensator to set the main rotor collective blade pitch. Altitude and vertical speed are estimated using an on-board ultrasonic sonar, and the reference altitude is commanded by the guidance subsystem. The throttle is controlled open-loop as a function of the collective command, providing approximately constant rotor RPM.