Bird
Raised Fist0
Drone Programmingprogramming~3 mins

How motor speed controls movement in Drone Programming - Why You Should Know This

Choose your learning style10 modes available
The Big Idea

What if you could make a drone dance in the sky just by changing motor speeds?

The Scenario

Imagine trying to fly a drone by manually adjusting each motor's speed without any clear method or control system. You have to guess how fast each motor should spin to make the drone go up, down, or turn. It's like trying to steer a car by pushing the wheels yourself instead of using the steering wheel.

The Problem

This manual way is slow and frustrating. You might spin motors too fast or too slow, causing the drone to wobble, crash, or not move as you want. It's hard to keep balance and control because every tiny change affects the drone's movement unpredictably.

The Solution

By understanding how motor speed controls movement, you can program the drone to adjust each motor's speed precisely. This lets the drone move smoothly in any direction, hover steadily, or turn quickly. The drone becomes easy to control and responsive to commands.

Before vs After
✗ Before
motor1_speed = 100
motor2_speed = 100
motor3_speed = 100
motor4_speed = 100  # all motors same speed, no control
✓ After
motor1_speed = base_speed + pitch_adjust
motor2_speed = base_speed - pitch_adjust
motor3_speed = base_speed + roll_adjust
motor4_speed = base_speed - roll_adjust  # motors adjusted for movement
What It Enables

This concept lets you program drones to fly smoothly, respond to controls, and perform complex maneuvers safely and reliably.

Real Life Example

When a drone pilot wants to move forward, the program increases the speed of the back motors and decreases the speed of the front motors, causing the drone to tilt forward and fly ahead.

Key Takeaways

Manual motor control is hard and error-prone.

Adjusting motor speeds precisely controls drone movement.

Programming motor speeds enables smooth, stable flight.

Practice

(1/5)
1. What happens when all four drone motors run at the same speed?
easy
A. The drone spins rapidly in place
B. The drone hovers or moves straight up or down
C. The drone moves sideways
D. The drone immediately lands

Solution

  1. Step 1: Understand motor speed effect on lift

    When all motors run at the same speed, they produce equal lift, balancing the drone.
  2. Step 2: Determine movement from equal lift

    Equal lift means the drone either stays in place (hover) or moves straight up/down if speed changes.
  3. Final Answer:

    The drone hovers or moves straight up or down -> Option B
  4. Quick Check:

    Equal motor speeds = hover/up/down [OK]
Hint: Same speed on all motors means hover or vertical move [OK]
Common Mistakes:
  • Thinking equal speeds cause spinning
  • Assuming sideways movement with equal speeds
  • Confusing motor speed with drone landing
2. Which of the following is the correct way to set motor speeds in code to make the drone hover?
easy
A. setMotorSpeeds(100, 90, 100, 90);
B. setMotorSpeeds(0, 0, 0, 0);
C. setMotorSpeeds(100, 100, 100, 100);
D. setMotorSpeeds(100, 110, 90, 100);

Solution

  1. Step 1: Identify equal motor speeds for hover

    Hover requires all motors to run at the same speed to balance lift.
  2. Step 2: Check each option for equal speeds

    Only setMotorSpeeds(100, 100, 100, 100); has all motors set to 100, equal speeds for hover.
  3. Final Answer:

    setMotorSpeeds(100, 100, 100, 100); -> Option C
  4. Quick Check:

    Equal speeds in code = hover [OK]
Hint: Equal values in all motor speed parameters mean hover [OK]
Common Mistakes:
  • Using different speeds thinking it still hovers
  • Setting all speeds to zero which stops motors
  • Mixing up parameter order
3. Given this code snippet:
setMotorSpeeds(120, 100, 120, 100);

What movement will the drone most likely perform?
medium
A. Move forward
B. Hover in place
C. Tilt sideways and move right
D. Rotate clockwise

Solution

  1. Step 1: Analyze motor speed differences

    Motors 1 and 3 run faster (120) than motors 2 and 4 (100), creating torque imbalance.
  2. Step 2: Understand effect of torque imbalance

    This imbalance causes the drone to rotate (yaw) clockwise due to uneven motor speeds.
  3. Final Answer:

    Rotate clockwise -> Option D
  4. Quick Check:

    Unequal opposite motors speed = rotation [OK]
Hint: Faster opposite motors cause rotation [OK]
Common Mistakes:
  • Assuming forward movement from speed difference
  • Thinking drone hovers with different speeds
  • Confusing rotation direction
4. This code is intended to make the drone move forward:
setMotorSpeeds(110, 110, 90, 90);

But the drone spins instead. What is the likely error?
medium
A. Left and right motors have different speeds causing spin
B. Front motors are slower than rear motors
C. Motors on opposite sides have same speeds causing rotation
D. All motors have equal speeds causing hover

Solution

  1. Step 1: Identify motor speed pairs

    Motors 1 and 2 are 110, motors 3 and 4 are 90; left and right sides differ.
  2. Step 2: Understand effect of left-right speed difference

    Different speeds on left vs right cause the drone to spin (yaw), not move forward.
  3. Final Answer:

    Left and right motors have different speeds causing spin -> Option A
  4. Quick Check:

    Unequal left-right speeds = spin [OK]
Hint: Left-right speed difference causes spin, not forward move [OK]
Common Mistakes:
  • Thinking front-rear speed difference causes spin
  • Assuming equal speeds cause spin
  • Mixing motor numbering sides
5. You want the drone to tilt forward and move forward smoothly. Which motor speed setting is best?
setMotorSpeeds(95, 95, 105, 105);

Why does this work?
hard
A. Front motors slower than rear motors tilt drone forward
B. Rear motors slower than front motors tilt drone backward
C. Left motors faster than right motors cause forward tilt
D. All motors equal speed cause forward movement

Solution

  1. Step 1: Identify motor speed distribution

    Motors 1 and 2 (front) run at 95, motors 3 and 4 (rear) at 105; front motors slower than rear.
  2. Step 2: Understand tilt direction from speed difference

    Slower front motors provide less lift upfront, tilting the nose down for forward movement.
  3. Final Answer:

    Front motors slower than rear motors tilt drone forward -> Option A
  4. Quick Check:

    Slower front motors = forward tilt [OK]
Hint: Slower front motors than rear tilt drone forward [OK]
Common Mistakes:
  • Thinking faster front motors tilt forward
  • Confusing left-right with front-rear speeds
  • Assuming equal speeds cause tilt
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard