= MORSE projects proposed for Google Summer of Code = We are planning to apply to the [[http://www.google-melange.com/gsoc/homepage/google/gsoc2012|Google Summer of Code (GSoC) 2012]]<
> Here is the list of projects available for students to try their hand at == Manipulation of objects by multiple robots at once == '''Explanation:''' At the moment MORSE can simulate a robot taking an object, commonly used on robots with arms. We do this by parenting the object (a small box, for instance) to the ''hand'' of the robot. The aim of this project is to be able to simulate the passing of the object from one robot to another. This implies the changing of the parent attribute of the box in Blender in a more complex way, since they can't both be the parents at once, but at some point both of them will be holding the object. At this moment, both of the robots and the object become one single sigid body, to later go back to their individual states. This project could be extended to allow two robots to move while carrying an object between them. '''Expected result:''' To modify the existing methods to hold an object, and extended to allow for an object to be held by two (or more) robots at once. '''Knowledge prerequisite:''' * Knowledge of the Pyhton programming language * Knowledge of the Bleder 3D software * Understanding of 3D transformations '''Mentor:''' Gilberto Echeverria == Quadrotor flight modeling == '''Explanation:''' We have had many requests for a ''fairly'' realistic quadrotor to be simulated in MORSE. Ideally this would be a simplified model of the aerodinamics, since we are not interested in making it very realistic, but enough that it can be used to plan the general movement of one drone, or even a whole group of them. The challenge is in making the 3D mesh of the quadrotor tilt when turning, have some basic simulation of the forces applied to the rotors and react to commands in the same way as a real quadrotor. This project can also be tied in with the previous one, to allow us to use several quadrotors to hold and lift a single object. '''Expected result:''' To provide a new robot type in MORSE, for flying quadrotors. It must behave in a way as realistic as possible, without having to simulate the areodinamic interactions of the rotors. Additional components necessary for the robot to work will be necessary, such as a motion controller '''Knowledge prerequisite:''' * Knowledge of the Pyhton programming language * Knowledge of the Bleder 3D software * Understanding of 3D transformations '''Mentor:''' Gilberto Echeverria == Advanced control of a human avatar using a Kinect == '''Explanation:''' MORSE includes a virtual human that can interact with the robots in the simulated environment. It can currently be controlled with keyboard and mouse, in a way similar to the one used in most first person videogames. Recently we experimented with controlling this human avatar using the Microsoft Kinect, but at the moment this control is limited only to the hands, and we let Blender to calculate the position of the rest of the arm, using Inverse Kinematics. However, this does not always provide realistic results. By applying all the data we receive from the Kinect, we could provide a better pose for the human. This also requires a major rethinking of the way we control the human avatar and its interactions in the simulation '''Expected result:''' Having a more realistic human avatar, that replicates every gesture performed by a user. It should be able to move around in the simulated environment in an intuitive way '''Knowledge prerequisite:''' * Knowledge of the Pyhton programming language * Knowledge of the Bleder 3D software * Understanding of 3D transformations * Experience with the Open NI drivers for Kinect would be a plus, but not mandatory '''Mentor:''' Gilberto Echeverria