567  Actuator Assessment and Reference

Learning Objectives

After completing this chapter, you will be able to:

  • Test your actuator knowledge with interactive quizzes
  • Use quick reference cards for common specifications
  • Troubleshoot actuator problems efficiently
  • Apply actuator selection skills to real-world scenarios

567.1 Interactive Self-Assessment Quiz

Test your understanding of actuators with this auto-graded quiz.


567.2 Quick Reference Cards

Actuator Voltage Current Control Interface Key Specs
Servo SG90 4.8-6V 500mA stall PWM (1000-2000us) 180 deg range
Servo MG996R 4.8-7.2V 2.5A stall PWM (1000-2000us) Metal gears
DC Motor (TT) 3-6V 200-500mA PWM + H-Bridge 200-300 RPM
Stepper 28BYJ-48 5V 200mA 4-wire sequential 2048 steps/rev
Stepper NEMA 17 12V 1.2A A4988/DRV8825 200 steps/rev
Relay 5V 5V coil 70mA coil Digital ON/OFF 10A @ 250VAC
Solenoid 12V 12V 500mA-1A Digital ON/OFF 10mm stroke
NeoPixel WS2812B 5V 60mA/pixel max Digital data Addressable RGB
Buzzer (Passive) 3-5V 20mA PWM tone Variable frequency

567.2.1 L298N H-Bridge Motor Driver

Pins Function
IN1, IN2 Motor A direction
IN3, IN4 Motor B direction
ENA, ENB PWM speed (remove jumper)
OUT1, OUT2 Motor A connections
OUT3, OUT4 Motor B connections
+12V Motor supply (5-35V)
+5V Logic output (when >7V input)
GND Common ground

Truth Table:

ENA IN1 IN2 Motor State
0 X X STOP (coast)
1 0 0 BRAKE
1 1 0 FORWARD
1 0 1 REVERSE
1 1 1 BRAKE

567.2.2 A4988 Stepper Driver

Pin Function
STEP Pulse for each step
DIR Direction (H/L)
ENABLE LOW=on, HIGH=off
MS1, MS2, MS3 Microstepping
1A, 1B, 2A, 2B Motor coils
VMOT 8-35V motor supply
VDD 3-5.5V logic

ESP32 PWM Setup:

const int pwmFreq = 5000;      // Frequency in Hz
const int pwmChannel = 0;       // 0-15 available
const int pwmResolution = 8;    // 8-bit = 0-255

ledcSetup(pwmChannel, pwmFreq, pwmResolution);
ledcAttachPin(GPIO_PIN, pwmChannel);
ledcWrite(pwmChannel, dutyCycle);

Formulas:

Duty Cycle (%) = (PWM value / Max value) x 100
Average Voltage = Supply Voltage x Duty Cycle

8-bit PWM:  Max = 255
10-bit PWM: Max = 1023
12-bit PWM: Max = 4095

Servo Timing (50 Hz):

1000 microseconds = 0 degrees
1500 microseconds = 90 degrees
2000 microseconds = 180 degrees
Problem Likely Cause Solution
Motor doesn’t run Wrong wiring Check IN1, IN2, EN connections
Motor only one direction Direction pins swapped Swap IN1 and IN2
Motor runs but slow Low PWM duty cycle Increase duty cycle
Servo jitters Insufficient power Use external 5V supply
Servo doesn’t move Wrong frequency Must be 50Hz for servos
Stepper skips steps Too fast Reduce speed, add acceleration
Driver overheats Current too high Add heatsink, reduce current
Random MCU resets Missing flyback diode Add diode across inductive loads
Relay won’t switch Coil voltage wrong Check coil voltage rating
LED very dim Missing current limit Add 220-330 ohm resistor

567.3 Chapter Summary

Actuators are the hands of IoT systems, converting electrical signals from microcontrollers into physical actions that affect the real world.

567.3.1 Key Takeaways

  • Motor Types: DC (continuous rotation), Servo (precise angles), Stepper (precise steps)
  • Driver Circuits: Required for high-current loads (L298N, A4988, transistors)
  • PWM Control: Enables smooth speed/brightness control by varying duty cycle
  • Safety: Flyback diodes, current limiting, watchdog timers, fail-safe defaults
  • Visual/Audio: LEDs, displays, buzzers provide user feedback

567.3.2 Motor Selection Quick Guide

Need Choose Why
Variable speed, no position DC Motor Simple, efficient, cheap
Precise angle (0-180 deg) Servo Built-in feedback, easy control
Precise position, any range Stepper Open-loop accuracy, holds position
On/off, high power Relay Electrical isolation, high current
Fast linear motion Solenoid Quick push/pull action

567.4 What’s Next?

Now that you understand actuators (output devices), you can combine them with sensors (input devices) to create complete IoT feedback control systems.

Return to Actuators Overview →

Continue to Mobile Phone as a Sensor →