Motors

A motor turns electrical energy into motion: it spins a computer's fans, moves a printer's head and steers a model car. This article explains the force behind every motor, then the three kinds a beginner meets first, the brushed DC motor, the stepper motor and the servo motor: how each works, how to read its numbers, drive it, test it, and stay safe.

About the analogies. Everyday comparisons appear only in shaded "Analogy" boxes, and each says where it stops working.

1. A short recap

2. What a motor is, and the numbers that describe it

In an electric motor, loops of wire sit in a magnetic field; a current through them makes the field push on the wire, and the push turns a shaft, the rod that sticks out of the motor.[1] Three quantities describe the shaft:

3. The physics: force, torque and switching the current

A magnetic field pushes sideways on a wire carrying a current. For a straight wire at right angles to the field, the force is F = IlB, where I is the current in amperes, l the length of wire in the field in meters, and B the field strength in teslas (T). The push is at right angles to both the wire and the field.[4] This is the same force that moves a speaker cone (recap).

Now bend the wire into a rectangular loop on a shaft, between the north and south poles of a magnet. Current flows one way along one side of the loop and the opposite way along the other, so the two sides are pushed in opposite directions. Together they twist the loop. For a coil of N turns, each enclosing area A, the torque is:[1]

τ = NIAB sin θ

where θ (theta) is the angle between the field and a line pointing straight out of the loop's face. More turns, more current, a bigger loop or a stronger magnet all give more torque, and the torque falls to zero when the loop's face points along the field.[1]

Torque on a current loop in a magnetic field Left: top view of a rectangular current loop on a shaft between a north magnet pole on the left and a south pole on the right, with field lines running left to right. One side of the loop carries current into the page and is pushed down; the other carries current out of the page and is pushed up, so the loop twists around the shaft. Right: a graph of torque against loop angle over one turn. With a fixed current direction the torque is a sine wave that is positive for half a turn and negative for the other half. With the current reversed every half turn, the torque is always positive, a series of humps. N S magnetic field B (N to S) F F Top view: shaft (center) seen end-on. Current into page (×) on one side, out (•) on the other. 0° 90° 180° 270° 360° + 0 − torque loop angle θ (one full turn) solid: current reversed every half turn dashed: current never reversed
Figure 1. Torque on a current loop. Left: a loop on a shaft between a magnet's poles; current flows in on one side and out on the other, so the field pushes one side up and the other down (F), twisting the loop. Right: the torque against the loop's angle with a fixed current direction (dashed): it reverses every half turn. Reversing the current every half turn (solid) keeps the torque in one direction. Simplified; not to scale.

There is a catch. Past the zero-torque position the torque reverses, so the loop would just rock back and forth. To keep it turning, the current must reverse every half turn.[1] The brushed DC motor does this with sliding contacts; the stepper motor relies on an external circuit.

4. Brushed DC motors

How it is built

A brushed DC motor is the simplest and most common motor. It has four main parts:[5]

As the shaft turns, the brushes slide from one commutator segment to the next, so the current reaches the rotor windings in a changing order and the rotor's poles keep being pulled toward the stator's opposite poles. This switching is called commutation; here it is mechanical, with no control circuit.[5] With a single loop, the split ring's two halves swap brushes every half turn: exactly the reversal section 3 asked for.[1]

How the commutator reverses the current in a brushed DC motor Two panels. Each shows a north magnet pole on the left and a south pole on the right, a rectangular rotor coil between them, and below it a commutator made of two half-ring segments labeled a and b, with a brush touching each side; the left brush goes to the positive supply and the right brush to the negative. In the left panel segment a, connected to side 1 of the coil, touches the positive brush, so current flows up side 1 on the left. In the right panel the rotor has turned half a revolution: side 2 is now on the left and segment b touches the positive brush, so current again flows up the left-hand side. The current through the coil has reversed, so the force on the left side stays into the page and on the right side out of the page, and the rotor keeps turning the same way. NSside 1side 2ab+ supply− supplybrushbrush NSside 2side 1ba+ supply− supplybrushbrush Now: segment a on the + brush Half a turn later: segment b on the + brush Forces: × into page, • out of page Current in the coil itself has reversed
Figure 2. A simple two-pole brushed DC motor. Permanent magnets make the stator field; the rotor coil is connected to a two-segment commutator; spring-loaded brushes connect the commutator to the supply. Left: current flows through the coil and the field turns it. Right: half a turn later the commutator segments have swapped brushes, so the current through the coil reverses and the torque keeps the same direction. Real motors have three or more rotor coils and commutator segments. Simplified; not to scale.

The brushes and commutator rub, so they are the parts that wear out.[5] Their bouncing contact also makes electrical noise (section 5).[6]

Analogy: a donkey chasing a carrot on a stick. The rotor's magnetic poles chase the stator's opposite poles, and the commutator keeps moving the target just as they arrive, so the chase never ends.

Where it breaks down: Nothing in the motor "wants" anything. The rotor turns because the magnetic force on the current in its wires makes a torque (τ = NIAB sin θ), and the commutator reverses that current at the moment the torque would otherwise reverse.

Common types

The permanent-magnet (PMDC) motor is the most common type: its speed follows the applied voltage, and its current follows the load torque, in nearly straight lines. Larger motors may make the stator field with coils instead, wired in parallel with the rotor (shunt-wound, for good speed control), in series (series-wound, for high torque) or both (compound-wound).[5]

A gearmotor adds a gearbox, which trades speed for torque: a 10:1 gearbox turns the output ten times slower and, apart from friction losses, about ten times stronger.[7]​[2] A brushless DC motor (BLDC) replaces the brushes with electronic switching, guided by built-in Hall-effect sensors or by sensing the back EMF described below. It is quieter, but needs a dedicated controller.[8]

Back EMF: why a running motor draws less current

A coil spinning in a magnetic field has a voltage induced in it; that is how a generator works.[9] So a turning motor is also a generator. The voltage it makes opposes the supply and is called back EMF (EMF, electromotive force, means a source voltage). It is zero when the shaft is still and grows in proportion to speed.[10]

Model the motor's coil as a resistance R in series with the back EMF E (Figure 3). The current is then:

I = (V − E) / R

OpenStax's example: coils of 0.400 Ω on 48.0 V. At switch-on there is no back EMF, so 120 A flows, heating the coils at 5.76 kW. At running speed the back EMF is 40.0 V, leaving 8.0 V across the coil, and the current falls to 20 A. That is why lights dim briefly when a refrigerator starts.[10]

Equivalent circuit of a DC motor with back EMF A battery V connects to a dashed box labeled motor, containing a resistor R for the coil resistance in series with a voltage source E, the back EMF, whose positive end faces the battery positive so that it opposes it. A current I flows around the loop. Two boxes on the right give the OpenStax example with V equal to 48.0 volts and R equal to 0.400 ohms: at switch-on the motor is stalled, E is zero and 120 amperes flows, heating the coil at 5.76 kilowatts; running, E is 40.0 volts and only 20 amperes flows. + V R (coil resistance) + − E (back EMF, grows with speed) motor I Switch-on (stalled): E = 0 I = 48.0 V / 0.400 Ω = 120 A heat in coil: 5.76 kW Running: E = 40.0 V I = (48.0 − 40.0) V / 0.400 Ω = 20 A current falls as speed rises OpenStax example, V = 48.0 V
Figure 3. The equivalent circuit of a DC motor: the coil's resistance R in series with a back-EMF source E that grows with speed. Right: the OpenStax example (R = 0.400 Ω, V = 48.0 V). Stalled, E = 0 and 120 A flows; at running speed, E = 40.0 V and 20 A flows.

Back EMF also lets a motor adjust to its load. Load the shaft and the motor slows, the back EMF drops, and more current flows to make more torque. Unloaded, it speeds up until the back EMF nearly equals the supply.[10]

Speed, torque and stall

So a permanent-magnet motor follows two nearly straight lines (Figure 4).[5]​[10] Speed falls as torque rises, from the no-load speed to zero at the stall torque. Current rises with torque, from a small no-load current (enough to overcome friction) to the stall current, which is simply the supply voltage divided by the coil's resistance. And speed follows voltage: halve the voltage and, ideally, the speed halves.[5]

A stalled motor does no work, so all its power becomes heat in the coils; a motor forced to run too slowly can burn out.[10] Pololu calls the stall figures for its small gearmotors "theoretical values", warning that stalls could damage them.[7]

Speed, current and power against load torque for a small DC motor A graph with load torque from 0 to 20 gram-force centimeters on the horizontal axis, speed in RPM on the left axis and current in milliamperes on the right axis. The speed line falls straight from 9,100 RPM at zero torque to zero at the stall torque of 20 gram-centimeters. The current line rises straight from 70 milliamperes at zero torque to 500 milliamperes at stall. A dotted curve of mechanical power rises from zero, peaks at about 0.5 watt at half the stall torque, and falls back to zero at stall. 0 2,000 4,000 6,000 8,000 10,000 0 100 200 300 400 500 600 0 5 10 15 20 load torque (g·cm) speed (RPM) current (mA) no-load speed 9,100 RPM current: 70 mA at no load stall current 500 mA (stall) power, peak ≈ 0.5 W speed
Figure 4. Speed and current against load torque for a small "130-size" hobby motor at 6 V, drawn as ideal straight lines through the datasheet's no-load point (9,100 RPM, 70 mA) and stall point (20 g·cm, 500 mA). The dotted curve is mechanical power, speed times torque, which peaks at half the stall torque (calculated, about 0.5 W). Real motors bend away from straight lines, and the datasheet allows wide tolerances.

Units and markings

Small brushed motors rarely carry markings; the numbers come from a datasheet. A "130-size" hobby motor (a common case size) lists:[11]

Datasheet values for a 130-size hobby motor (Adafruit 711)
QuantityValueWhat it means
Rated voltage6.0 V DCThe voltage the other numbers apply to
No-load speed / current9,100 ± 1,800 RPM / 70 mA maxSpinning freely
Loaded speed / current4,500 ± 1,500 RPM / 250 mA maxAt its intended working load
Starting (stall) torque20 g·cm (about 2 mN·m, calculated)The most torque it can make
Stall current500 mA maxCurrent when held still

A similar Pololu motor draws about 70 mA spinning freely but around 800 mA stalled at 6 V,[12] so its coil resistance is roughly 6 V / 0.8 A = 7.5 Ω (calculated). Design around the stall current, not the running current: every motor briefly draws it at switch-on.[10] Polarity only sets direction: reverse the wires and the motor runs backward.[5]

5. Driving a DC motor

Never from a microcontroller pin

A microcontroller, the small computer chip on boards such as the Arduino Uno, cannot power a motor directly. The Uno's ATmega328P is rated for at most 40 mA per pin,[13] while even a small motor can draw 800 mA when stalled,[12] twenty times as much. The pin only signals a driver, a transistor circuit or chip that switches the motor's current.

One direction: a transistor switch

For one direction, put a MOSFET between the motor and ground, a low-side switch (Figure 5). Microchip adds a diode across the motor, a gate resistor (R1) to protect the microcontroller from current spikes, and a resistor (R2) from gate to ground to keep the MOSFET off while the pin is not driven.[5]

The diode is essential. When the MOSFET switches off, the winding's current must keep flowing for a moment; without a path, it makes a voltage spike that can destroy the MOSFET. The diode, stripe toward the positive supply, gives that current a loop back through the motor.[5]​[14] It is the same flyback diode used across relay coils (recap).

A low-side MOSFET motor switch with flyback diode, and PWM speed control Left: schematic. A motor M connects from the positive motor supply down to the drain of an N-channel MOSFET Q1, whose source goes to ground. A flyback diode D1 sits across the motor with its cathode at the positive supply. A microcontroller pin drives the gate through resistor R1, and resistor R2 runs from the gate to ground. Right: two PWM waveforms. At 25 percent duty cycle the voltage is high for a quarter of each period and the dashed average line sits at a quarter of V; at 75 percent duty the average is three quarters of V. +V motor supply M D1 flyback Q1 R1 R2 pin V 0 D = 25%: average = 0.25 × V V 0 D = 75%: average = 0.75 × V one period dashed: average voltage
Figure 5. Left: a low-side MOSFET switch for a DC motor, after Microchip AN905. A pin drives the gate through R1; R2 holds the gate low when the pin is not driven; the flyback diode D1 across the motor carries the coil's current when the MOSFET turns off. Right: PWM. The motor sees the supply for a fraction D of each period, and its speed follows the average voltage D × Vsupply.

Speed control with PWM

Since speed follows voltage, a driver slows a motor by switching the full supply on and off with PWM, rather than wasting power in a series resistor. The average voltage is:[5]

Vaverage = D × Vsupply

where D is the duty cycle (0 to 1). The winding's inductance smooths the pulses into a steady current, so a motor rated 15,000 RPM at 12 V ideally turns at 7,500 RPM at 50% duty. Microchip suggests 4 to 20 kHz: lower is noisy and sluggish, higher wastes power in the transistors.[5]

Both directions: the H-bridge

Reversing a motor means reversing its current. The H-bridge, named for its shape on a schematic, does this with four switches and the motor across the middle (Figure 6); each side is a half-bridge. Q1 and Q4 on drives current one way (forward); Q3 and Q2 on drives it the other way (reverse). All off lets the motor coast. Both bottom switches on brakes it: a spinning motor is a generator, and shorting its terminals stops it quickly.[5]

The H-bridge: forward, reverse, coast and brake Two copies of an H-bridge. Each has four switches, Q1 top left, Q2 bottom left, Q3 top right and Q4 bottom right, between a positive rail and ground, with a diode across each switch pointing toward the positive rail, and a motor M connected between the midpoints of the left and right sides. In the first copy Q1 and Q4 are closed and a highlighted path shows current flowing down through Q1, left to right through the motor and down through Q4. In the second copy Q3 and Q2 are closed and the highlighted current flows right to left through the motor. A table lists the modes: forward, Q1 and Q4 on; reverse, Q3 and Q2 on; coast, none on; brake, Q2 and Q4 on. A warning box says never turn on Q1 and Q2, or Q3 and Q4, together, because that shorts the supply to ground, called shoot-through. +V Q1Q2Q3Q4MI +V Q1Q2Q3Q4MI Forward: Q1 + Q4 on Reverse: Q3 + Q2 on Mode Switches on Forward Q1, Q4 Reverse Q3, Q2 Coast none Brake Q2, Q4 Never: Q1 + Q2, or Q3 + Q4shorts the supply to ground("shoot-through")
Figure 6. The H-bridge, after Microchip AN905. Left: the forward (Q1 and Q4 on) and reverse (Q3 and Q2 on) current paths through the motor, highlighted. A diode across each switch carries the motor's current when the switches turn off. Right: the four modes, and the one forbidden state: never turn on both switches on the same side, which shorts the supply ("shoot-through").

One rule matters above all: never turn on both switches on the same side. That shorts the supply to ground and destroys them.[5] Even a too-quick changeover can leave both on for an instant, so drivers insert a short dead time with all switches off.[14] Each switch also needs a diode (often built into the MOSFET) to carry the motor's current when the bridge switches.[5]​[14]

Driver chips

Most projects use a driver integrated circuit, a complete circuit on one chip (recap):

Whatever the driver, check that its continuous current rating covers the motor,[8] and power the motor from its own supply with a shared ground: a board's small onboard regulator struggles with anything but the smallest servo[17] (regulator heat).

Taming motor noise

Brush bounce and the coils' inductance put noise on the power lines that can upset sensors or reset a microcontroller. Pololu recommends a 0.1 µF ceramic capacitor across the motor's terminals (non-polarized, since the motor may reverse), short twisted motor leads kept away from signal wires, and a large electrolytic capacitor across the supply near the electronics[6] (decoupling).

Knowing how fast it turns

Load, heat and wear change a motor's speed, so precise control needs feedback, a measurement of what the motor is doing. An encoder is a slotted wheel on the shaft between an infrared LED and a phototransistor, giving a pulse per slot; a magnet wheel and a Hall-effect sensor work the same way. Or measure the back EMF between PWM pulses.[5]

6. Stepper motors

A stepper motor turns in fixed increments called steps. It has no brushes: a driver switches current through the stator coils in sequence, and the rotor moves one step per change. If it is not overloaded, the controller knows the shaft's position just by counting steps, with no sensor (open-loop positioning), and the motor can hold its shaft still.[18] Hence steppers in 3D printers, CNC machines and plotters.[2]

How it works

The coils are grouped into phases, switched together.[2] In the common permanent-magnet and hybrid steppers, the rotor is a magnet. Energize a phase and its stator poles become magnets that pull the rotor's opposite poles into line; the current's direction decides which pole is north. Energize the next phase and the rotor moves on.[18] (A third type, variable reluctance, uses an unmagnetized toothed iron rotor.[18])

The step angle is the turn per step: a 1.8° motor takes 200 steps per revolution.[2] Permanent-magnet steppers commonly step 7.5° or 3.6°; finely toothed hybrids 3.6° to 0.9°.[18]

A two-phase stepper motor taking four full steps Four diagrams of a stepper motor in a row, each a circular stator with four poles (top, right, bottom, left) and a bar-magnet rotor in the middle. Coil A drives the top and bottom poles and coil B the left and right poles. Step 1, A forward: the top pole is north and the bottom south, and the rotor south end points up. Step 2, B forward: the right pole is north and the left south, and the rotor points right. Step 3, A reversed: the bottom pole is north and the rotor points down. Step 4, B reversed: the left pole is north and the rotor points left. Each step turns the rotor 90 degrees clockwise. NSSNStep 1: A+coil A forward NSSNStep 2: B+coil B forward SNSNStep 3: A−coil A reversed SNSNStep 4: B−coil B reversed Unlit poles are off. The rotor turns 90° clockwise per step.
Figure 7. A two-phase stepper in four full steps (one phase on at a time). Coil A is on the top and bottom poles, coil B on the left and right. The rotor is shown as a single bar magnet; it lines up with whichever poles are energized, so each change of coil current moves it 90°. Reversing the current in a coil swaps that coil's north and south poles. Real motors have many more poles and much smaller steps.

Full steps, half steps and microsteps

Coil current sequences for full-step and half-step drive Two charts of coil current against step number for coils A and B, with plus meaning current one way, minus the other way, and zero off. Full step, two phases on, four steps: coil A is plus, plus, minus, minus; coil B is minus, plus, plus, minus. Both coils always carry current. Half step, eight steps: coil A is plus, plus, zero, minus, minus, minus, zero, plus; coil B is zero, plus, plus, plus, zero, minus, minus, minus. Each coil is switched off for one step between reversals, giving twice as many steps per cycle. Full step (two phases on)A++−−B−++−1234step number Half stepA++0−−−0+B0+++0−−−12345678step number
Figure 8. Coil currents for a two-phase bipolar stepper over one cycle. Full step (two phases on): both coils always carry current, and each change moves the rotor one step. Half step: a coil is switched off between reversals, giving twice as many, smaller steps. "+" and "−" mark the direction of current in each coil. After the sequences in Microchip AN907.

Holding torque and its relatives

The headline figure is holding torque: the torque needed to turn the shaft while the windings are energized and still. Detent torque is the smaller torque needed with the power off; the rotor magnet still pulls on the stator, so an unpowered stepper feels "notchy". Pull-in and pull-out torque are the loads it can start against and keep moving at a given step rate.[18] Torque falls as the step rate rises, and most steppers are limited to below 1,000 steps per second. Overload makes the motor slip, missing steps so that the controller no longer knows the position,[18] which is why machines use a limit switch to find a "home" position.[2]

Unipolar and bipolar

Units and markings

Two figures matter most: the current per phase, the most a winding can carry without overheating, and the resistance per phase. Any rated voltage usually follows from them by Ohm's law.[2]

Two common hobby steppers
NEMA 17 bipolar (Adafruit 324)Small geared unipolar (Adafruit 858)
Steps per revolution200 (1.8°)32 at the motor, about 516 at the shaft through 1:16.128 gearing
Rated voltage and current12 V, 350 mA5 V
Resistance per winding35 Ωabout 42 Ω
Holding torque20 N·cm (0.2 N·m)150 g·cm (15 mN·m)
Wires45

Values from the Adafruit product pages.[20]​[21]

Check: 12 V across 35 Ω gives about 340 mA (calculated). NEMA 17 describes only the mounting faceplate size; two NEMA 17 motors can have quite different electrical ratings.[2]

Driving a stepper

Two surprises: a stepper draws its most current standing still, so it runs hot even when idle; and because most modes energize two phases, the supply should be rated for at least twice the current per phase.[2]

7. Servo motors

A servomechanism, or servo, uses feedback to reach a desired result. A hobby servo (or RC servo, from radio control) is a small box holding a DC motor, a gearbox, a potentiometer (a variable resistor) turned by the output shaft, and a control circuit, with three wires: power, ground and signal.[17]

The feedback loop

The signal gives the desired position; the potentiometer reports the actual one. The control circuit compares them and drives the motor, usually through a small H-bridge, in whichever direction makes them match.[17] This is closed-loop control, unlike the stepper's open loop: push the shaft away and the circuit pushes back.

Block diagram of a hobby servo A dashed outline labeled inside the servo. A control pulse, the desired position, enters a box labeled control circuit, desired versus actual. Arrows lead from it to an H-bridge, then to a DC motor, then to gears that make the output slower and stronger, which turn the output shaft, or horn. The shaft also turns a potentiometer that measures the angle, and an arrow labeled actual position, feedback, leads from the potentiometer back to the control circuit. Power and ground enter on two further wires. inside the servo control circuit:desired vs actual H-bridge DC motor gears: slower,more torque potentiometer(measures angle) pulse in (desired position) output shaft (horn) actual position (feedback) Power and ground also enter on two wires.
Figure 9. Inside a hobby servo. The control circuit measures the incoming pulse width (the desired position) and compares it with the potentiometer's reading (the actual position). It drives the DC motor through an H-bridge until the two match. Gears slow the motor down and raise its torque. Simplified block diagram.

Analogy: a thermostat. You set the temperature you want; the thermostat compares it with the room's measured temperature and turns the heater on until they match. A servo does the same with position.

Where it breaks down: A thermostat only switches a heater on or off, and only heats. A servo's H-bridge can push the motor either way, so it corrects an overshoot as well as an undershoot, and it reads its position fifty times a second.

The control pulse

The signal wire carries a pulse every 20 milliseconds (50 Hz). The pulse width, typically 1 to 2 ms, sets the position, with 1.5 ms at the center. A common servo turns about 90° over that range, but this is a convention, not a standard: some turn farther with wider pulses, and driving them past their stops can damage them.[17] Adafruit's SG92R micro servo turns about 180° and may need 0.75 to 2.25 ms to reach its ends.[24]

Microcontroller PWM hardware can make these pulses.[17] The Arduino Servo library defaults to 544 to 2,400 microseconds (µs), centered on 1,500 µs and repeated every 20,000 µs;[25] those ends are wider than many servos accept, so set narrower limits if yours strains at the ends.[17]

Hobby servo control pulses Three pulse trains, each showing two periods of 20 milliseconds. Top: 1.0 millisecond pulses, with a dial on the right showing the servo horn at one end of its travel. Middle: 1.5 millisecond pulses, horn at the center. Bottom: 2.0 millisecond pulses, horn at the other end. The pulses are narrow compared with the 20 millisecond period. 1.0 ms one end 1.5 ms center 2.0 ms other end 20 ms (50 pulses a second) 0 10 20 30 40 time (ms) horn angle
Figure 10. Servo control pulses. A pulse repeats every 20 ms; its width sets the position: about 1 ms at one end, 1.5 ms at the center and 2 ms at the other end. For a continuous-rotation servo the same pulses set speed and direction instead, with 1.5 ms meaning stop. The pulse widths are drawn to scale against the 20 ms period.

Position or continuous rotation

A continuous-rotation servo spins all the way around, and its pulse sets speed and direction: on the FeeTech FS5103R, 1.5 ms is stop, 2 ms full speed one way, 1 ms full speed the other, with a trimmer to make 1.5 ms truly stop.[26]​[17] Strictly it is no longer a servo, since its position feedback is disabled.[8] Top speed is around 60 RPM.[17]

Units, markings and power

Current varies with load, from about 10 mA for a small idle servo to an ampere or more for a large one straining. A stalled servo can drag the supply down and reset the microcontroller, so use a supply that can deliver the current, with separate wires from it to each servo.[17]

8. Which motor for which job?

The three motors side by side
Brushed DCStepperHobby servo
Best atContinuous, fast rotationExact positions and speedsMoving to an angle and holding it
ControlVoltage or PWM; H-bridge to reverseStep sequence from a driverOne pulse every 20 ms
Knows its position?Only with an encoderBy counting steps (open loop)Yes, from its potentiometer (closed loop)
Watch out forStall current, brush noiseMissed steps, heat at standstillLimited travel and speed, supply sag

Summarized from sections 4 to 7 and the Adafruit guides.[8]​[2]

9. Testing

10. Everyday uses

11. Safety

The whole story in brief

Coming up in this section: 21 Crystals and Oscillators.

Sources

All links were checked in October 2026. External links open in a new tab.

  1. OpenStax, College Physics 2e, section 22.8, "Torque on a Current Loop: Motors and Meters": https://openstax.org/books/college-physics-2e/pages/22-8-torque-on-a-current-loop-motors-and-meters
  2. Bill Earl, Adafruit Learning System, "All About Stepper Motors" (updated June 2024, PDF): https://cdn-learn.adafruit.com/downloads/pdf/all-about-stepper-motors.pdf
  3. OpenStax, University Physics Volume 1, section 10.8, "Work and Power for Rotational Motion": https://openstax.org/books/university-physics-volume-1/pages/10-8-work-and-power-for-rotational-motion
  4. OpenStax, College Physics 2e, section 22.7, "Magnetic Force on a Current-Carrying Conductor": https://openstax.org/books/college-physics-2e/pages/22-7-magnetic-force-on-a-current-carrying-conductor
  5. Reston Condit, Microchip Technology, AN905 "Brushed DC Motor Fundamentals" (DS00905B, 2010, PDF): https://ww1.microchip.com/downloads/en/AppNotes/00905B.pdf
  6. Pololu, "Using the Motor Driver on the 3pi Robot and Orangutan Robot Controllers", section 9, "Dealing with Motor Noise": https://www.pololu.com/docs/0J15/9
  7. Pololu, "10:1 Micro Metal Gearmotor HPCB 6V" product page (item 3061): https://www.pololu.com/product/3061
  8. Bill Earl, Adafruit Learning System, "Adafruit Motor Selection Guide" (PDF): https://cdn-learn.adafruit.com/downloads/pdf/adafruit-motor-selection-guide.pdf
  9. OpenStax, College Physics 2e, section 23.5, "Electric Generators": https://openstax.org/books/college-physics-2e/pages/23-5-electric-generators
  10. OpenStax, College Physics 2e, section 23.6, "Back Emf": https://openstax.org/books/college-physics-2e/pages/23-6-back-emf
  11. Adafruit, "DC Toy / Hobby Motor - 130 Size" product page (product 711): https://www.adafruit.com/product/711
  12. Pololu, "Brushed DC Motor: 130-Size, 6V, 11.5kRPM, 800mA Stall" product page (item 1117): https://www.pololu.com/product/1117
  13. Microchip Technology, ATmega48A/PA/88A/PA/168A/PA/328/P data sheet (DS40002061B, 2020), "Absolute Maximum Ratings" (PDF): https://ww1.microchip.com/downloads/aemDocuments/documents/MCU08/ProductDocuments/DataSheets/ATmega48A-PA-88A-PA-168A-PA-328-P-DS-DS40002061B.pdf
  14. Murugavel Raju, Texas Instruments, "Current Recirculation and Decay Modes" (SLVA321A, revised April 2021, PDF): https://www.ti.com/lit/an/slva321/slva321.pdf
  15. Texas Instruments, L293x Quadruple Half-H Drivers data sheet (SLRS008D, revised January 2016, PDF): https://www.ti.com/lit/ds/symlink/l293.pdf
  16. Texas Instruments, DRV8833 Dual H-Bridge Motor Driver data sheet (SLVSAR1E, revised July 2015, PDF): https://www.ti.com/lit/ds/symlink/drv8833.pdf
  17. SparkFun Electronics, "Hobby Servo Tutorial": https://learn.sparkfun.com/tutorials/hobby-servo-tutorial
  18. Reston Condit and Douglas W. Jones, Microchip Technology, AN907 "Stepping Motors Fundamentals" (DS00907A, 2004, PDF): https://ww1.microchip.com/downloads/en/AppNotes/00907a.pdf
  19. Pololu, "A4988 Stepper Motor Driver Carrier" product page (item 1182): https://www.pololu.com/product/1182
  20. Adafruit, "Stepper motor - NEMA-17 size - 200 steps/rev, 12V 350mA" product page (product 324): https://www.adafruit.com/product/324
  21. Adafruit, "Small Reduction Stepper Motor - 5VDC 32-Step 1/16 Gearing" product page (product 858): https://www.adafruit.com/product/858
  22. Texas Instruments, ULN200x, ULQ200x High-Voltage, High-Current Darlington Transistor Arrays data sheet (SLRS027T, revised March 2025, PDF): https://www.ti.com/lit/ds/symlink/uln2003a.pdf
  23. Allegro MicroSystems, A4988 DMOS Microstepping Driver with Translator and Overcurrent Protection data sheet (PDF): https://www.allegromicro.com/-/media/files/datasheets/a4988-datasheet.pdf
  24. Adafruit, "Micro servo [TowerPro SG92R]" product page (product 169): https://www.adafruit.com/product/169
  25. Arduino, Servo library source, Servo.h (GitHub, arduino-libraries/Servo): https://github.com/arduino-libraries/Servo/blob/master/src/Servo.h
  26. Adafruit, "Continuous Rotation Servo [FeeTech FS5103R]" product page (product 154): https://www.adafruit.com/product/154