Course curriculum

    1. Welcome to the course!

    2. Slides used in this Course

    3. Prerequisites

    4. Hardware of the course

    5. How to ask questions and other important remarks

    1. Lesson 1: Motor Control Fundamentals: Part 1

    2. Lesson 2: Motor Control Fundamentals: Part 2

    3. Lesson 3: Unveiling the STSPIN240 Motor Driver

    4. Lesson 4: PWM Signal generation using the Timer of the STM32 MCU

    5. Lesson 5: PWM Testing

    6. Lesson 6: STSPIN840 Motor Driver and Custom Hardware

    7. Lesson 7: Motor Driver Library Integration

    1. Lesson 1: Incremental encoders theory

    2. Lesson 2: STM32 Timer Encoder CubeMx Configuration

    3. Lesson 3: Timer Encoder Mode Test

    4. Lesson 4: STM32 SWV Configuration

    5. Lesson 5: Timer Update Interrupt

    6. Lesson 6: Timer Overflow demo

    7. Lesson 7: Timer Encoder Library Integration

    8. Lesson 8: Timer Encoder Library Test

    1. Why do we need PID?

    2. PID Explanation

    3. PID Library Integration

    4. Main File edition for PID Testing

    5. Tuning a PID Controller

    1. Lesson 1 - Moving Average Filter Introduction

    2. Lesson 2 - Library Integration

    3. Lesson 3 - Testing the library

    4. Lesson 4 - Updating the encoder library

    1. Lesson 1 - Introduction to the RC Joystick

    2. Lesson 2: Timers Configuration for capturing input PWM signals

    3. Lesson 3: adding the callback function to capture interrupts

    4. Lesson 4 - Testing the RC Joystick

    5. Lesson 5 - Motor Control using the RC Joystick

About this course

  • $9.00 / month with 7 day free trial
  • 78 lessons
  • 10 hours of video content

Complete guidance on designing the balancing robot

On the web, you can find plenty of embedded programming tutorials covering various aspects of microcontroller programming. Similarly, many robotics courses teach the theory of robot and controller design. However, what's often missing is how to combine these two areas to build a functional robot. 

This course is designed to address this gap. We will cover embedded programming and control system topics, culminating in the construction of a self-balancing robot. 

Students will master STM32 microcontroller programming, learn to implement PID and LQR control algorithms and gain expertise in DC motor control. Additionally, we will delve into sensor integration, exploring gyroscopes, accelerometers, and more. 

Furthermore, we'll discuss the hardware design aspects of the robot, including motor selection, and PCB layout. By the end of the course, students will have the skills and knowledge to not only understand the theory but also apply it practically to build their balancing robot from scratch.

Robotics Course Outcome

+ DC Motor Control: Theory and Implementation

+ PID Controller: Theory and Implementation

+ Mastering Embedded STM32 Microcontrollers programming (SPI, Timers, PWM, Interrupts, etc.)

+ Working with incremental encoders for position/velocity estimation

+ Using an IMU sensor (gyroscope, accelerometer, and magnetometer) to compute Euler angles

+ Linear Quadratic Regulator: Theory and Implementation

+ PCB Design of the Balancing Robot


Open-Source Hardware and Firmware

The PCB Design of the robot is fully open-source and anyone can order it with the assembly and use it for other designs:

PCB Design of the Balancing Robot

All project code developments are open-source and available on GitHub:

Balancing Robot Source Code 


Check how your self -balancing robot could work


Leverage Early Access

By accessing the course content early, leverage lower prices and start designing your robot RIGHT NOW. Before I upload half of the course content (currently DC Motor Control, Linear Encoders for position/velocity estimation, moving-average filter, and PID Implementation are available) within a month, there is a 50 % DISCOUNT.

Base

  • Immediate access to the full course content

  • Full support during the course enrollment

  • Access to the community page

  • Access to the source code of the Course

  • 100% money-back guarantee (7 days from the order)

MONTHLY SUBSCRIPTION

$9/mo

Recommendded

  • Everything in the BASE subscription

  • Access to the source code of all projects in SteppeSchool

  • 100% money-back guarantee (7 days from the order)

Three-MONTH SUBSCRIPTION

$20/3-month

Annual

  • Everything in the base subscription

  • Access to the source code of all projects in SteppeSchool

  • 100% money-back guarantee (7 days from the order)

ANNUAL SUBSCRIPTION

$70/yr

FAQ

  • What do I get after the enrollment?

    You will have full access to the course content on all electronic devices. In addition, you will receive PDF slides that summarize the entire content of the course.

  • Can I ask questions during the course?

    Every lesson has a discussion section where students can ask questions. I will be happy to answer your questions and give you feedback.

  • Can I cancel the subscription any time?

    You can cancel the subscription at any time and there is no cancellation fee. You will have full course content until your access expires.

  • Can I use a different STM32 board than the one used in the course?

    Since all stm32 microcontrollers are based on the same ARM architecture, they have minor differences. Also, you can mention your board in the discussions section. I will help you set up the hardware and project.

  • Should I have prior knowledge of programming STM32 microcontrollers?

    It is preferable to have basic STM32 programming skills