|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Biomimetic Flight Control
Introduction: The term "optic flow" has been associated with flight ever since John Gibson's first publications on optic flow. Gibson's work has inspired many psychologists and neurologists with new ways of understanding how animals perceive the world. Some of this work has led to an increased understanding of how flying insects maintain stability and perceive the world while flying. Gibson's work has also inspired countless roboticists to look for ways to use optic flow to provide a robot with similar visual perception problems. The number of total papers published on the subject of optic flow is, at last count, several thousand and growing. By the mid-1990's, researchers were able to integrate optic flow algorithms into robotic platforms and use them to perform simple navigation tasks in real time. Most of these demonstrations involved large wheeled robots using either conventional digital computers or image processor boards to perform the necessary optic flow calculations. Most of these demonstrations occurred in laboratory environments with artificially strong stimuli. This is a far cry from the performance necessary to provide a small aircraft with optic flow based vision. It was only recently that optic flow sensing was successfully integrated into small aircraft and used to provide the aircraft with some degree of autonomy. This was accomplished in the year 2000 in two separate efforts. One effort was executed at the Australian National University in Canberra, and was led by Prof. Mandyam Srinivasan and Prof. Javaan Chahl (of DSTO). This group demonstrated autonomous altitude hold on a rotary-wing aircraft. The second effort was executed by Geoffrey Barrows, Founder of Centeye, and then on the research staff at the U.S. Naval Research Laboratory in Washington, D.C. This effort implemented an optic flow sensor that weight under an ounce and provided a 1-meter RC aircraft with autonomous altitude control. As shown on our page on artificial insect vision, we are continuing to improve our optic flow sensors. However we strongly believe it is not enough to show that these sensors work in a laboratory setting. Therefore we are also continuing to integrate them into RC aircraft and fly them outdoors in the real world. We believe that this activity is essential to our work- this activity provides us with real-world experience using these sensors. This provides us with practical knowledge of the strengths and weaknesses of each sensor, as well as gives us ideas on where to focus future research efforts. This activity also serves as a "litmus test" to make sure that our newer sensor designs are truly better. Finally, this activity allows us to prove that our technology works in the real world, not just in the laboratory. The importance of the last point cannot be over-emphasized. Theoretical analysis and laboratory "bench work" may make slight advances in a technology, but are never enough to solve the real problems necessary to be solved before turning an idea into a reality. More often than not, it is only when we actually try to build something that we come across the real problems that need to be solved. The goal of this project is to demonstrate that our optic flow sensors can be used by an autopilot to fly a small RC aircraft through a real-world environment. This shows that these sensors are robust enough to be used on real robotic platforms in real-world environments. This also shows that the state of this technology is sufficiently advanced that autonomous flight through a complex environment is not a far off fantasy, but is becoming a reality. The subject matter below will prove to you that these optic flow sensors "really do work". See our Video Gallery and our Picture Gallery Goals: The goal of this effort is to develop a suite of sensors and control algorithms that ultimately weighs under ten grams, yet allows a tiny UAV to autonomously perform several tasks, without the use of GPS. These tasks, listed in approximate order of difficulty, are: Task 1. Use optic flow to maintain a constant altitude over land or water, at day or night, Task 2. Use optic flow perform terrain following over urban or natural varying terrain, Task 3. Perform take-off and landing Task 4. Detect and avoid collisions with sparse obstacles in the UAV's flight path Task 5. Fly down the center of a tunnel or corridor Task 6. Detect and avoid collisions in an environment dense with obstacles, such as underneath a forest canopy and deep in the urban canyon. Platforms: We mostly use standard "RC-model" aircraft for the UAV test bed frame. This is because the growing hobbyist market is supporting the development of smaller, lighter, cheaper, and increasingly potent aircraft components. During the year 2001 and 2002, our platform of choice was the "Wingo", a foam aircraft made by the German company Kavan. This aircraft is electrically powered, has a 1 meter wingspan, and flies at speeds up to 10-15 meters per second when loaded with electronics. It is not the most maneuverable UAV, but it is hard to stall and easy to fly, which makes it attractive for research purposes. In 2003 we migrated towards a smaller aircraft of our own design. With all electronics and sensing integrated, the gross-weight of this aircraft is 100 grams. This lighter aircraft is highly maneuverable and supports research in more confined spaces. Sensing and Control: Inside the platform we mount Ladybug sensors, custom-designed electronics including the autopilot (which we affectionately call the "reflex board"), optic flow sensors, a data downlink, and standard RC electronics for guiding the aircraft. The data downlink allows us to record on ground what the sensor outputs and control algorithm response, so that we can compare this data again a recorded video of the flight. This is essential for us to verify that the UAV is doing what we think it is doing. The "Reflex Board" is used to implement both bio-inspired control stratagems and standard PID control loops. This board also communicates with the Ladybug sensors via the I2C protocol and interprets the optic flow information provided by the sensors. The final control signals are generated in two ways. On our older Wingo-based system, the control signals generated by the Reflex Board are mixed with control signals generated by a human pilot on the ground. This mixing was essential during our earlier work because it allowed the human to "rescue" the aircraft from mishaps while control rules are being tweaked. This also allowed us to optimize one aspect of the control algorithms at a time. For example, in our earlier altitude control experiments the human would steer the aircraft, via the rudder, while the Reflex Board would control it's altitude via the throttle or elevator. Finally, this mixing allowed us to perturb the aircraft's flight to test the response of a control rule. The down linked data includes all the signals generated by both the reflex board and the human pilot, allowing us to prove that when the aircraft turned to avoid an obstacle or stayed above the ground, it was indeed the sensors that provided the control. On our more recent system, the human is completely removed from the control loop. One the aircraft is airborne, it is completely autonomous. We chose this path to provide a more convincing demonstration that our technology is working. Status: As of December 2003, we have demonstrated the above flight control tasks as follows: Task 1. Altitude Control: This behavior was first demonstrated using optic flow sensing by the author at the Naval Research Laboratory in 2000, using a sensor having only eight pixels. Since then, this behavior has been performed numerous times in different environments and weather conditions, including over unbroken snow on a cloudy day. Task 2. Terrain Following: We have demonstrated terrain following over terrain as steep as 15 degrees. We are looking for a test environment in which we can demonstrate this behavior over steeper terrain approaching 30 to 45 degrees. Task 3. Perform take-off and landing: Taking off from a "runway" has been performed many times, with optic flow being used to know when to stop ascending and "level off". This behavior turned out to be almost trivial using the easy-to-fly Wingo aircraft. A good demonstration of a controlled landing using our optic flow sensor technology was performed by our Drexel University colleagues Paul Oh, Bill Green, and Keith Sevick. Task 4. Avoid sparse obstacles: This task is an order of magnitude more difficult than the above tasks because the aircraft has to be guided through all three axes of rotation. Reliable obstacle detection was demonstrated in 2002, however the aircraft was generally not maneuverable enough to steer the aircraft away in time. The down linked data did prove, however, that the obstacles were detected and a turn to avoid them was initiated. More recently we have demonstrated obstacle avoidance with higher reliability, and have even shown that the aircraft can work it's way out of a corner. Task 5. Fly down the center of a tunnel or corridor: This is our current area of focus. So far our aircraft have traveled extremely short distances down a tunnel. We do not yet claim success in this area. Task 6. Detect and avoid collisions in an environment dense with obstacles, or with highly transparent obstacles (e.g. trees in winter): This is an extremely difficult task. We have not yet attempted this level of obstacle avoidance. However in the laboratory we are beginning to demonstrate the ability to detect very narrow obstacles as well as concurrently detect foreground and background objects, both of which will support this task. We will start demonstrating this type of behavior in increasingly difficult environments over the next two years. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||