While working under Andrew Kun in Project54, I have been researching and developing applications for the Microsoft Surface for my Senior Project. This project has eventual collaboration with other schools and professional groups working toward a multi-touch application which controls a fleet of multiple unmanned aerial vehicles, or UAVs. Other groups have developed similar UAV flight applications, such as the following by the Polytechnical University of Valencia:
Natural user-interfaces (NUIs) are becoming more popular by the day thus why we chose present this project on the Microsoft Surface multi-touch table with a workable, easy-to-use NUI rather than standard GUI approaches.
Due to the fact that our final collaboration will involve a UAV designed by the students of WPI and the communication issues will be handled by other UNH students and Professor Nicholas Kirsch my project will be a mock demonstration of the capabilities of the surface to handle a fleet of UAVs. We chose to use the Parrot AR.Drone, as shown below.
The Parrot AR.Drone is a quadrotor helicopter that boasts many functions, such as visual tag recognition and flight stabilization technology, which I will be able to utilize for this project and is highly modifiable which makes for a suitable representation of the UAVs that will eventually be used.
While the API does come with an example Windows application that is designed to be customized by users to create their own AR.Drone applications I chose to use an application developed by Thomas Endres and his team at Parrotsonjava which is a .NET solution to flying the Drones from Windows operating systems.
While porting the software for use on the Microsoft Surface I chopped it down and modified it to my needs to simplify the user interface. Eventually the manual control of the Drone will be an option for only when the user desires since flight will be almost entirely autonomous. As shown in the video below, controlling the AR.Drone is done via Microsoft Surface’s excellent tagged object recognition capabilities using two tagged objects for two-pronged joystick-like movement.
In the following weeks I will be developing the application to be able to control multiple UAVs via Access Point technology in order to boost their range of connectivity and allow the user to control them at great distances from the Microsoft Surface.