# Why do a quadcopter's opposite rotors spin in the same direction?

All the quadcopters I've seen have four motors, arranged in a square-like shape. Two of these rotors spin one way, and two of them spin the other way so that the main body of the quadcopter doesn't rapidly spin as it flies. (Conservation of angular momentum.)

I find it interesting that the two rotors that spin in the same direction are opposite, not adjacent. Why not put the two anticlockwise-spinning rotors on one side and the two clockwise-spinning rotors on the other side? That seems the natural way to do it.

So what makes the opposites-spin-the-same design better?

This design is to prevent unwanted yaw when moving, or vice-versa.

Consider the following two actions:

• When a quadcopter yaws, it does so by creating a speed difference between the opposite-rotating rotors; creates a torque that rotates the quad.
• When a quadcopter moves left/right, it does so by slowing all the motors on one side of the frame and/or speeding those on the other, imparting a slight roll - the thrust is now slightly sideways, so it moves. (This is the same for front/back.)

From this, you can infer that if the same-direction rotors were on the same side as each other, when creating a speed difference to yaw the aircraft you would also impart a roll. Similarly, when trying to roll the aircraft would yaw.

The image below shows visually how an opposite-corner rotation quadcopter moves:

• That's a great way to depict how the motors/props are working! Apr 22 '20 at 12:17
• @Kralc, I might add that the act of creating the speed difference between pairs of motors creates a torque that rotates the quad. Other than that, nice work! +1
– ifconfig
Apr 22 '20 at 16:02

They don't necessarily have to spin in the same direction, but it gives the best results.

This has to do with the mathematics of drone flight. Pulling from https://drones.stackexchange.com/a/419/46, and in particular the mixing matrix:

(where ω is the motor speed, τ is the torque about the axes, and F is the vertical thrust. Furthermore, the +/- signs indicate if a motor is spinning clockwise or counterclockwise.)

This mixing matrix is the math that allows us to determine the motor speeds required for the desired movement (roll/pitch/yaw/thrust). Without that, nothing can work-- a quadcopter will fall like a rock without autonomous motor control.

The mixing matrix is subtle in that it tells the tale for the aircraft. For yaw, in particular, we're interested in the z-torque relationship on the third row. If there were other combinations of +/- signs, i.e. you didn't have opposite motors spinning the same direction, then the matrix would either:

• lose a special property called invertibility. Without that special property, there are NO possible combinations of motor speeds which can give us an arbitrary combination of roll, pitch, yaw, and thrust.

• What that means is that everything becomes coupled. You can't make the drone yaw right without also accidentally rolling and/or pitching and/or climbing. Not very useful!
• make a lopsided control accessibility space, which is a formal way of saying that the copter won't behave symmetrically about the roll, pitch, and yaw axes.

• this isn't ideal, who wants a drone which turns 270 degrees to the left faster than 90 degrees to the right?

## Background

We're used to seeing algebraic equations such as a=b*x, where we can divide by b to get x. I.e. a=b*x --> a/b = x.

Unfortunately, with linear algebra (i.e. math with matrices), the "division" by b is not universal. It can only happen if b has a property we call "invertibility", which means that for a system a = B * x we can only find the solution for x if we can find B^-1. In other words, a * B^-1 = x can only exist if B^-1 exists. Concretely, without the invertibility, there's no motor speed solution x which will give us the desired results a.

A matrix can only be inverted if it's square (rows == columns) AND if the determinant is non-0. The given mixing matrix is the only invertible combination of four props which returns symmetric performance.

Feel free to play around with the matrix on Wolfram Alpha, you'll find that there are other combinations which don't violate invertibility. These are workable and with additional motors and they can even have special desirable properties (see CyPhy Work's LVL 1 hexacopter)