Software and Scientific Team Projects
- Christoph Steup
- Sanaz Mostaghim
Time and location
- Time: The first meeting will take place on April 6th 2016 at 13:00 (Note: If you are interested to take this project, you must attend this meeting in which we assign you in groups)
- Location: G29 - 035
- Programming Languages: C(++), Lua
- Paparazzi UAV Framework: Overview
- V-REP Robotic Simulation System
- Control Theory: PID Controllers
- Sensor and Signal Processing
- Image processing
The course will be taken in groups of 3-4 Students per Topic. The students and the groups will be chosen by us depending on your background. The individual topics are not fully fixed, extensions and modifications are possible depending on the skills and interest of participating students. This will be discussed in the first meeting. The result of each project is a working demonstration with commented source code and a written documentation indicating the general concept and a Howto to start the demo.
The FINken quadcopters need an extensive calibration to compensate errors caused by production in the individual parts (sensors, rotors, frame) as well as during assembly. Since the copters are designed to form a swarm this tedious calibration need to be done for all copters. To overcome this manual process, this project shall provide a system to automatically calibrate the copters. This is done using a remote calibration framework already implemented between groundstation and copter. Additionally, our prototypical tracking system allows the detection and positioning of a single copter in the arena using a camera mounted on the ceiling. Based on the current control commands the expected behaviour can be computed and may be compared to the actual behaviour of the copter. Any error needs to be compensated by the calibration framework until the copter behaves as expected. The goal of the team is to develop the necessary software to compare expected and real behaviour and compute the necessary calibration values. These values need to be transmitted to the groundstation and the copter is evaluated again until calibrated.
Synchronization of external and internal video copter log files
Scientific experiments using the FINken quadcopters need an extensive data logging system to analyze the behaviour of the copter. Currently we use three logging systems: 802.15.4 wireless telemetry links from the copters to the groudstation, sd-card logging on the copters and video stream capture on a dedicated pc. All of these logs start at different points in time and will advance with possibly different rates. Therefore the three logs need to be synchronized to a single time domain to provide a single extensiive log. The goal of this pproject is to enable either an on-line synchronization tool to snyc the copters clock to the groundstation and the pc or an off-line tool to modify the time values of the logs post-mortem.
Unified software modules for real and simulated copters
The transfer of software between real and virtual FINkens is currently not easily possibe, since they use different programming languages (Lua and C). The used API is similar regarding the control outputs and parts of the sensory inputs of the copters. The gooal of this project is to unify the API between simulation and real robot and enable the usage of modules of the real copters in the simulation environment. To this end a mechanism needs to be implemented in the simulation environment that executed the modules of the paparazzi software. One approach is to compile the parapazzi software for PC architecture and integrate sensory input and control output with simuation using the plugin system of the simulation envionment.
Swarm-based distributed exploration (Simulation)
The FINken quadcopters shall ultimately fly in a swarm and cooperate to solve a common problem. This project will evaluate a special problem in the simulation environment. The goal is to enable a swarm of virtual FINkens to use their environmental dection sensors to locate a special phenomenon in the environment. The phenomenon will be based on the virtual projector, which can only be observed very locally by the copters. The copters need to cooperate to explore the avilable environment to find potential spots containing the phenomenon. Finally a single copter should be at every phenomenon and land there. The current simulation setup of the copters already contain all necessary sensor and control options. The task is to develop and implement tne necessary algorithm to solve the problem and produce interesting scenarios with phenomenon distributions of different difficulties. The performance of the different scenarios shall be evaluated and compared.
Special topics are available on demand. If students have own ideas we will gladly try to provide appropriate topics.