«An Autonomous Vision-Guided Helicopter Omead Amidi August 1996 Department of Electrical and Computer Engineering Carnegie Mellon University ...»
Helicopter position and velocity are also controlled by PD loops which output desired accelerations in the form of helicopter roll and pitch angles. The helicopter position and velocity, measured in the ground frame, are transformed to the helicopter frame to determine errors in the correct control axes. Position and velocity control loops are not combined as it was desired to operate the system in velocity mode alone. To reduce noise, the measured velocity is employed in the PD position loop instead of differentiating measured position. The reference roll and pitch angles from the position and velocity loops are range limited before being sent to PD controllers maintaining helicopter attitude. This range limiting is necessary to maintain helicopter control within a the operating range of the linear PD servo loops and to prevent large helicopter attitude changes in case on-board sensors malfunction.
80 Chapter 4. Design and Evaluation of an On-Board Vision-Based Helicopter Control System Helicopter Controller 4.8.3 Controller Testing As accurate attitude control is central to helicopter control, an attitude control testbed, shown in Figure 4-8, is employed to test and tune the PD attitude control loops using an electric model helicopter.
The testbed consists of an electrical model helicopter mounted on a swiveling arm platform. An optical encoder mounted with a frictionless bearing measures ground-truth angles in real-time. The model helicopter supports a detachable sensor package for sensor calibration using the optical encoder.
Following the attitude control experiments, the entire controller is implemented and tested on the 6-DOF testbed (See Appendix A). The controller stabilized the testbed helicopter with hovering accuracy of 15 cm by using 60 Hz vision-based position feedback.
Similarly, the controller is integrated with vision-based feedback for flying the R50 indoors. The controller hovered the R50 within 30 cm of the reference position. Figure 4-9 shows the R50 under computer control about 3 inches off the platform. Longitudinal and yaw control are also tested and tuned during these experiments.
____ ~~ ~
4.9 Vision and Attitude Synchronization Accurate synchronization is key in eliminating the effects of attitude on helicopter positioning with vision. The visual odometer relies heavily on helicopter attitude, measured precisely at each camera shutter opening, to compensate for image displacements caused by helicopter rotation. The transformations in (2-7) to (2-10) are based on accurate helicopter attitude measurement with each image capture.
Figure 4- 10. Attitude Synchronization Testbed
Ineffective attitude compensation can produce completely inaccurate helicopter positioning feedback which can be catastrophic during free flight. For this reason, the odometer’s attitude compensation is tuned and evaluated experimentally using an attitude synchronization testbed. As shown in Figure 4- 10, the testbed restricts camera movement to one dimension and incorporates a string poten
tiometer and a shaft encoder to measure ground truth camera translation and rotation. A calibrated stereo pair of cameras is mounted on the testbed, along with a gyroscope to measure attitude. Gravel is placed under the cameras to provide features for vision.
While keeping the camera stationary, the correlation of measured attitude with image-based displacement while cameras rotate reveals the exact shutter timing in relation to filtered attitude data.
This timing is employed to trigger attitude data acquisition by the sensor bridge module in the compensation system described in Chapter 3. Figure 4-1 1 displays the significant correction observed when measured precise timing was employed for attitude compensation. The dashed graph represents odometer output without attitude compensation, while the solid line represents the compensated position estimates which closely match the ground truth measurements shown by dots. Without correct synchronization, the compensated data is oscillatory and unusable.
4.10 Summary This chapter presented the experimental approach to developing an autonomous helicopter for outdoor free flight. System components such as vision computing, power, and sensing were individually tested and integrated on-board a mid-sized model helicopter, the Yamaha R50.
The helicopter’s on-board systems are tested indoors using a tethered testbed. The testbed restricts movement in the helicopter’s longitudinal direction and incorporated ground-truth positioning sensors for experiment evaluation and safety. Another testbed for attitude synchronization verifies vision-based positioning under sever attitude variation.
A control system is developed to stabilize the helicopter using vision-based positioning feedback.
The control system is made up of a series of nested PD servo loops for attitude, velocity, and position control. The controller is integrated with on-board vision to hover the R50 indoors using simulated natural scenes.
The indoor experiments with the six-degree-of-freedomtestbed and the R50 helicopter demonstrated the effectiveness of the visual odometer in helicopter positioning under controlled laboratory environments. Implemented by a low latency and real-time vision matching, the odometer was repeatedly tested and verified off-board and then controlled the testbed R50 helicopter while connected to onboard power and sensing through tethers. The indoor tests proved that the helicopter system is air worthy for outdoor autonomous flight. However, outdoor untethered flight raises two critical issues not present during indoor experiments.
First, without protective tethers, the helicopter can fly out of control if the on-board vision system malfunctions. Loss of control can cause serious damage to the helicopter and possible human injury.
To avoid this, a secondary system is necessary to maintain helicopter position and stabilize the helicopter in case of malfunctions. In addition to the safety issue, during less precise high altitude flight, a secondary positioning system can guide the helicopter to a predetermined destination where the visual odometer can then start accurately positioning the helicopter for high precision maneuvers. The secondary positioning system can also measure the performance of the visual odometer and the onboard helicopter controller during free flight experiments.
Secondary Positioning System
Second, outdoor autonomous flight requires an integrated system that combines the vision system with actuation and the secondary positioning system on-board the helicopter. The system must support a safety mechanism which allows a human operator to switch system positioning modes or take over the helicopter controls in case of system failure. Since it is difficult to pinpoint problems if the system is totally under computer control, human interfaces are especially critical in system development. An interface capable of human and computer control augmentation is developed for effective system performance evaluation.
This chapter presents the approach to developing an on-board helicopter system which integrates the visual odometer machine, secondary positioning using Global Positioning System, navigational sensors, actuator controls, and a safety system with human interfaces. The chapter concludes with the presentation and analysis of the helicopter positioning and control data collected during outdoor flight tests.
5.1 Secondary Positioning System
It is difficult to rely on vision alone for helicopter positioning throughout free flight in natural environments. The visual odometer relies on trackable ground features, but they may not be always available. For example, a bare and snow covered field does not have many features. When vision-based positioning encounters such featureless environments, a secondary system is necessary to stabilize the helicopter. Furthermore, a prototype visual odometer machine is prone to malfunctions during initial testing and requires a backup system for reliable positioning for helicopter control.
A global positioning system (GPS) receiver is an ideal secondary source of positioning to assist vision. A GPS receiver senses the range of multiple GPS satellites orbiting the earth and estimates global position by triangulation. GPS is especially well-suited for positioning aircraft since at higher altitudes, satellites are not usually obstructed by objects. An autonomous helicopter can rely on GPS for high altitude flight to a destination and then switch to vision-based positioning as it flies in close proximity of objects of interest.
5.1.1 GPS Positioning Method The Global Positioning System is a ranging system which uses known positions of satellites in space to estimate unknown positions on land, sea, air and space. Satellite signals are continually tagged with the time they were transmitted so that when received, the signal transit period can be measured by a synchronized receiver. Apart from the determination of a vehicle’s instantaneous position and velocity, GPS can precisely coordinate events in time using the satellite signals.
GPS uses “pseudoranges” derived from the broadcast satellite signals. The pseudorange represents the distance to a satellite and is derived by measuring the travel time of a coded signal from the satellite and multiplying it by its velocity. The clocks of the receiver and the satellite are employed to measure the signal travel time; since these clocks are never perfectly synchronized, instead of true ranges, “pseudoranges” are obtained where the synchronization error (denoted as clock error) is taken into account.
Four unknown quantities must be determined to estimate the GPS receiver position. They include:
the three coordinates of the desired position based on true satellite range, and the satellite and receiver clock error. Therefore, at least four satellites are necessary to compute the unknowns from equations of
where, as shown in Figure 5-1, (xo, yo, zo) represent the vehicle position, ( x i, yi,zi) and Ri represent the known i th satellite position and measured pseudo-range, c is the speed of light, and AT represents clock error.
The GPS receiver constantly maintains the position of all visible satellites by using the navigation data provided by each satellite. Satellite ephemeris data provides parameters which describe each satellite’s path based on orbital mathematics and Keplarian equations. (See  for a summary of equations and the satellite navigation message details.)
5.1.2 GPS Positioning Quality
GPS is a rapidly evolving technology for outdoor navigation and guidance. Currently, positioning accuracy using a single GPS receiver is within a hundred meter radius which is not suitable for precise helicopter control. This relatively low positioning accuracy is mainly caused by undesirable atmospheric effects and purposely degraded satellite signals. Recently, differential GPS correlation methods use ground station receivers to improve the positioning accuracy to about 1% of distance traveled by light in 1 microsecond or a 3 meter radius. The ground stations provide a correction reference for the atmospheric effects and helps in eliminating the effects of signal degradation.
New algorithms further improve positioning accuracy by taking advantage of the carrier phase of satellite signals. The carrier phase position resolutions were typically performed by off-line computations with powerful computers; however, high-end units on the market can perform the phase resolution “on-the-fly.’’
90 Chapter 5. Outdoor Autonomous FlightSecondary Positioning System Carrier-phase methods employ a double differencing method to remove systematic errors ranging from signal degradation by the defense department to clock errors and atmospheric effects. These methods maintain the range differences of a number of satellites with respect to one satellite, referred to as the pivot satellite, from both a pre-surveyed ground station and the mobile GPS receiver to eliminate errors. Different strategies employ brute force search algorithms to Kalman filtering to determine the satellite signal carrier phase ambiguity in real-time, and take advantage of the phase of the carrier to estimate receiver position to within 10-20 cm accuracy. (See  for a comprehensive presentation of GPS principles and operation and  for satellite navigation message format.) 5.1.3 GPS Evaluation Experiments A carrier-phase differential GPS receiver, the NovAtel Rt20 , is employed for outdoor flight experiments. The unit is capable of 10-20 cm positioning accuracy at 5 Hz provided the differential ground station is nearby (within 10 miles) and the helicopter is flown in an area with an unobstructed view of available GPS satellites.
Experiments are conducted to evaluate positioning accuracy and latency of the NovAtel RT20 carrier phase differential GPS receivers. A nearby (30 meter) differential station global position is surveyed by the Omnistar positioning system to provide corrections to the mobile receiver. The ground station is set up in an open area with no large, nearby obstructions. A choke-ring antenna is employed to help reduce multipath effects from reflected satellite signals.
The ground truth position is measured by an instrumented table, pictured in Figure 5-2, allowing GPS antenna movement in one direction and measuring ground-through position with an accurate string potentiometer. Experiments were conducted to compare the GPS data to ground-truth position at various rates of antenna oscillatory motion. As the graphs in Figure 5-3 illustrate, the experiments proved the performance of the GPS receiver. GPS positioning was accurate to 10 cm with 0.1 second average latency. The better than anticipated performance was due, in part, to the proximity of the ground differential station and the large number of available satellite signals. The GPS receiver had seven satellites in view during these experiments.