Introduction to Multirotors - Aeroclub-IITM/UAV GitHub Wiki
Multirotors
MultiCopters are aerodynamically unstable and absolutely require an on-board computer (aka autopilot) for stable flight. As a result, they are “Fly by Wire” systems and if the computer isn’t working, you aren’t flying. The autopilot combines data from small on-board MEMs gyroscopes, accelerometers (the same as those found in smart phones) to maintain an accurate estimate of its orientation and position.
Basic connections
-
Flight controller

Check this link for setting up simulation environment for quadcopters using ros and gazebo.