Digital Electronics and Microcontrollers for Robotics

The electronics between robot software and hardware: circuit laws, batteries and power systems, diodes and MOSFET switches, digital logic and logic levels, microcontrollers and embedded C, GPIO and interrupts, timers, PWM and servos, ADCs and signal conditioning, UART, I2C and SPI, CAN and micro-ROS, H-bridge motor drivers, and designing and debugging a controller board, with NEC, NRTL, PHMSA and FCC requirements.

ROB-200 Year 2 3 credits 12 lessons · 5 h 29 min

Offered by HSM University · Robotics

This is the American version of this course. See the Canadian version.

What you'll learn

  • Apply Ohm's law, Kirchhoff's laws, voltage dividers and power calculations to analyze and size simple robot circuits
  • Specify battery packs and power systems for robots, estimating runtime, C-rate and voltage sag and choosing regulators and protection
  • Use diodes, BJTs and MOSFETs as switches, calculating base resistors, conduction losses and junction temperatures and protecting against inductive spikes
  • Work fluently in binary and hexadecimal, decode signed sensor data, manipulate register bits and interface devices with different logic levels
  • Describe the architecture, memory and toolchain of a microcontroller and write embedded C that uses fixed-width types, volatile and non-blocking timing
  • Configure GPIO inputs and outputs with appropriate pull resistors, debounce switches and handle events and encoders with interrupts
  • Configure hardware timers to generate PWM for motors and servos, choose PWM frequency and resolution, and measure speed with input capture
  • Measure analog signals accurately by choosing ADC resolution, reference and sampling rate, avoiding aliasing and conditioning signals with dividers, amplifiers and filters
  • Select and use UART, I2C and SPI, calculating baud error, pull-up values and bandwidth, and debug serial links with a logic analyzer
  • Design CAN and CAN FD networks with correct termination, bit timing and bus load, and explain how SocketCAN and micro-ROS connect microcontrollers to ROS 2
  • Analyze brushed DC motors and H-bridge drivers, including stall current, braking, regeneration and driver losses, and outline brushless motor drives
  • Plan, lay out, bring up and systematically debug a robot controller board, applying Canadian or US electrical, battery and radio requirements

Course content

12 lessons · 5 h 29 min total · final exam

  1. 1 Circuits for roboticists: voltage, current and power 30 min · quiz
  2. 2 Batteries and robot power systems 31 min · quiz
  3. 3 Semiconductors: diodes, transistors and MOSFETs as switches 28 min · quiz
  4. 4 Digital logic, number systems and signals 24 min · quiz
  5. 5 Microcontrollers and embedded C 25 min · quiz
  6. 6 GPIO, pull-ups, debouncing and interrupts 27 min · quiz
  7. 7 Timers, PWM and servo control 29 min · quiz
  8. 8 Analog inputs: ADCs, sensors and signal conditioning 26 min · quiz
  9. 9 Serial buses: UART, I2C and SPI 30 min · quiz
  10. 10 CAN and robot networks 25 min · quiz
  11. 11 Motor drivers and power electronics 26 min · quiz
  12. 12 Capstone: designing and debugging a robot controller board 28 min · quiz
  13. E Final exam 20 questions

Requirements

Recommended background. You can start any course at any time.

Description

The electronics between robot software and hardware: circuit laws, batteries and power systems, diodes and MOSFET switches, digital logic and logic levels, microcontrollers and embedded C, GPIO and interrupts, timers, PWM and servos, ADCs and signal conditioning, UART, I2C and SPI, CAN and micro-ROS, H-bridge motor drivers, and designing and debugging a controller board, with NEC, NRTL, PHMSA and FCC requirements.

Part of the Science stream, typically taken in year 2.