# How does a quadcopter yaw?

I've always wondered how a quadcopter actually yaws, when all propellers are horizontal. I know that two of the motors spins faster, but I don't understand how that generates thrust in the horizontal direction (I assume it has to?) to make the quadcopter turn.

Any vehicle yaws (i.e. turns) by having a net torque applied. What's interesting about a quadcopter is not just how it yaws, but how it yaws and doesn't roll, pitch, or climb at the same time.

To understand how this works, we need to briefly look at the math. We'll use a plus configuration, but really any mutirotor configuration works. The thing to keep in mind is that thrusts and torques are related to propeller speeds. If you speed a propeller up, it's intuitively obvious that it will create more thrust. And likewise, if you spin it faster, you need more torque. So changing motor speeds changes the net forces and torques on the airframe.

(Pedantically, it goes with the square of speed. So if you double the speed you quadruple the thrust and torque. But that's not important to this analysis.)

Here's the high-level driving equation. If you've ever messed around with mixers, you'll notice that the 4x4 matrix in the middle looks really familiar: What this does is it maps rotor speeds (squared) to torques about the roll, pitch, and yaw axes, as well as the net vertical thrust.

For hover, let's assume all motors are spinning at the same speed, `W`. So `W = w1 = w2 = w3 = w4`

### Yaw

What happens if we speed up the first and third and slow down the second and fourth by the same (squared) amount `dW`?

``````torque_x = 0*(W^2 + dW) + 1*(W^2 - dW) + 0*(W^2 + dW) - 1*(W^2 + dW) = 0
torque_y = 1*(W^2 + dW) + 0*(W^2 - dW) - 1*(W^2 + dW) + 0*(W^2 + dW) = 0
torque_y = 1*(W^2 + dW) - 1*(W^2 - dW) + 1*(W^2 + dW) - 1*(W^2 + dW) = 4*dW
F_z      = 1*(W^2 + dW) + 1*(W^2 - dW) + 1*(W^2 + dW) + 1*(W^2 + dW) = 4*W^2
``````

So the net force doesn't change (all the `dW` cancel out), and neither do the net rolls and pitches, but voila we have `4*dW` worth of torque!

For completeness, here's what happens when you want to change the other axes as well.

## Pitch

Let's change the front and back motors by the same (squared) speed, but we'll leave the other two motors alone:

``````torque_x = 0*(W^2 + 0) + 1*(W^2 - dW) + 0*(W^2 + 0) - 1*(W^2 + dW) = 2*dW
torque_y = 1*(W^2 + 0) + 0*(W^2 - dW) - 1*(W^2 + 0) + 0*(W^2 + dW) = 0
torque_z = 1*(W^2 + 0) - 1*(W^2 - dW) + 1*(W^2 + 0) - 1*(W^2 + dW) = 0
F_z      = 1*(W^2 + 0) + 1*(W^2 - dW) + 1*(W^2 + 0) + 1*(W^2 + dW) = 4*W^2
``````

Notice that, again, z-thrust stays constant, but this time only a pitching torque appears.

## Roll

Let's change the left and right motors by the same (squared) speed, but we'll leave the other two motors alone:

``````torque_x = 0*(W^2 + dW) + 1*(W^2 + 0) + 0*(W^2 + dW) - 1*(W^2 + 0) = 0
torque_y = 1*(W^2 + dW) + 0*(W^2 + 0) - 1*(W^2 + dW) + 0*(W^2 + 0) = 2*dW
torque_z = 1*(W^2 + dW) - 1*(W^2 + 0) + 1*(W^2 + dW) - 1*(W^2 + 0) = 0
F_z      = 1*(W^2 + dW) + 1*(W^2 + 0) + 1*(W^2 + dW) + 1*(W^2 + 0) = 4*W^2
``````

As always again, z-thrust stays constant, but this time only a rolling torque appears.

## Thrust

Finally, what happens if we speed up all four motors by the same (squared) speed?

``````torque_x = 0*(W^2 + dW) + 1*(W^2 + dW) + 0*(W^2 + dW) - 1*(W^2 + dW) = 0
torque_y = 1*(W^2 + dW) + 0*(W^2 + dW) - 1*(W^2 + dW) + 0*(W^2 + dW) = 0
torque_z = 1*(W^2 + dW) - 1*(W^2 + dW) + 1*(W^2 + dW) - 1*(W^2 + dW) = 0
F_z      = 1*(W^2 + dW) + 1*(W^2 - dW) + 1*(W^2 + dW) + 1*(W^2 + dW) = 4*W^2 + 4*dW
``````

So only in this case do we see an increase in vertical thrust (by `4*dW`). Notice how the net torques about each axis cancel out.

• I don't think I understand this. When entering a yaw turn, two diagonal opposite props (say, CW) spin up, creating lift, while the CCW props spin down relative to the throttle set point (creating less lift). When ending the yaw turn, the CW props spin down and the CCW spin up to end the yaw rotation. Both entering and exiting the yaw turn create net lift, because the down-spinning props cannot go arbitrarily low to counteract the lift from the up-spinning props. Don't they? Maybe this is true for 3D-enabled quads? – mcenno Apr 17 at 18:56
• @mcenno, you're correct that the props cannot go arbitrarily slowly. However, they're already going quite quickly so there's typically enough room to slow down, while still remaining with positive speed, to give yaw control authority. However, your point is very valid and is exactly the reason why multirotors can't yaw very quickly compared to their roll and pitch rates. – Kenn Sebesta Apr 17 at 20:35

The yaw effect created by the same effect that would cause a helicopter to spin if it didn't have a tail rotor.

On a multirotor, half the propellers spin clockwise (CW) and half counter-clockwise (CCW). This 50/50 split evens out the rotational forces for straight and level flight. To yaw, these forces need to be unbalanced. To spin CW for example, the CW motors spin faster and/or the CCW motors spin slower.

To minimise other movements, the CW and CCW motors alternate around the aircraft's frame. If all CW motors were on one side, a yaw motion would also cause the aircraft to tilt and move sideways.