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 CSA, Transport Canada and ISED requirements.
ROB-200 Year 2 3 credits 12 lessons · 5 h 29 min
Offered by HSM University · Robotics
This is the Canadian version of this course. See the American 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 analogue 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 Circuits for roboticists: voltage, current and power 30 min · quiz
- 2 Batteries and robot power systems 31 min · quiz
- 3 Semiconductors: diodes, transistors and MOSFETs as switches 28 min · quiz
- 4 Digital logic, number systems and signals 24 min · quiz
- 5 Microcontrollers and embedded C 25 min · quiz
- 6 GPIO, pull-ups, debouncing and interrupts 27 min · quiz
- 7 Timers, PWM and servo control 29 min · quiz
- 8 Analogue inputs: ADCs, sensors and signal conditioning 26 min · quiz
- 9 Serial buses: UART, I2C and SPI 30 min · quiz
- 10 CAN and robot networks 25 min · quiz
- 11 Motor drivers and power electronics 26 min · quiz
- 12 Capstone: designing and debugging a robot controller board 28 min · quiz
- 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 CSA, Transport Canada and ISED requirements.
Part of the Science stream, typically taken in year 2.