Free course · by Debugshala, Indore
Robotics Tutorial
17 free lessons, in the order we teach them in class: start at lesson 1 and work down. Every lesson has an analogy, a diagram, code you can run or copy, a quick quiz and an FAQ.
- 17Lessons
- 3Modules
- ~3 hReading time
- FreeAlways
01Robotics Foundations
- What is Robotics? A Beginner's Guide to How Robots WorkWhat is robotics? Learn the sense–think–act loop, the five parts of every robot, robot types and uses, and run a Python robot loop simulation.
- Types of Robots: Classification, Examples and Real-World UsesLearn the main types of robots: articulated, SCARA, Cartesian and delta arms, wheeled, legged and aerial robots, with their uses and runnable Python examples.
- Components of a Robot: Parts, Functions and How They ConnectUnderstand the components of a robot: chassis, motors, drivers, sensors, controller, battery and wiring, plus Python to size the battery and motor torque.
- Robotics Programming Languages: C++, Python and What to LearnWhich robotics programming languages matter? See where C++, Python, MicroPython, ROS 2 and industrial robot languages run, with code and a learning path.
- Arduino vs ESP32 vs Raspberry Pi: Which Board for Your Robot?Arduino vs ESP32 vs Raspberry Pi compared: CPU, RAM, GPIO, ADC, Wi-Fi and power, when to pick each one, plus Arduino, MicroPython and Raspberry Pi code.
02Sensors and Control
- Robot Sensors and Actuators: Motors, PWM and Filtering ExplainedRobot sensors and actuators explained: ultrasonic, IR, IMU, encoders, DC motors, servos, H-bridge drivers, PWM and noise filters, with Python demos.
- Ultrasonic Sensor with Arduino: HC-SR04 Wiring and CodeWire an HC-SR04 ultrasonic sensor to Arduino or ESP32, read distance with pulseIn, and improve accuracy with temperature correction and a median filter.
- Servo Motor with Arduino: SG90 Wiring, Code and Smooth MotionControl a servo motor with Arduino: how pulse width sets the angle, SG90 wiring and power, Servo library code, smooth motion and torque checks for robot arms.
- Stepper Motors and Drivers: A4988, ULN2003 and Arduino CodeLearn how stepper motors work, wire a 28BYJ-48 with ULN2003 or a NEMA 17 with A4988, set the current limit, use microstepping and add acceleration in code.
- PID Control Explained: Tuning P, I and D for Robot MotorsPID control explained with a shower analogy, block diagram and Python motor simulation: what P, I and D do, tuning steps, windup and derivative kick.
- Wheel Encoders and Odometry: Track a Robot's Position in CodeLearn how wheel encoders and quadrature decoding work, read them with Arduino interrupts, and compute differential drive odometry in Python, including drift.
- IMU Sensor Fusion: Accelerometer, Gyroscope and Filters in PythonLearn IMU sensor fusion: get tilt from an accelerometer, calibrate gyro drift, tune a complementary filter and read an MPU-6050 on Arduino, with Python code.
- Kalman Filter Explained: Step-by-Step Python SimulationThe Kalman filter explained with a robot example: predict and update steps, the Kalman gain, a numpy position-velocity tracker and how to tune Q and R.
03Robot Kinematics and Navigation
- Robot Kinematics: Forward and Inverse Kinematics in PythonRobot kinematics for beginners: forward kinematics of a 2-link arm, transformation matrices, inverse kinematics with the law of cosines and Jacobian IK.
- Differential Drive Robot: Kinematics, Turning and Python CodeHow a differential drive robot moves: turning radius, forward and inverse kinematics, wheel speed limits, a go-to-goal controller in Python and ROS 2 cmd_vel.
- A* Path Planning vs Dijkstra: Grid Robot Navigation in PythonLearn robot path planning with A* and Dijkstra: occupancy grids, f = g + h, heuristics, step-by-step Python traces and how Nav2 plans routes in ROS 2.
- Robot Localisation and SLAM Explained with Python SimulationsUnderstand robot localisation and SLAM: particle filters, loop closure, pose graphs and occupancy grids in Python, plus slam_toolbox and AMCL in ROS 2.