Autoplay
Autocomplete
Previous Lesson
Complete and Continue
Industrial ROS2 Manipulation Lab — Full Track: Simulation to Real Robot
Module 0 Start Here!
Welcome to the Industrial ROS2 Manipulation Lab (20:05)
Request Access to Your Private GitHub Repository
What Problem This Lab Solves
What You Will Build
How to Use This Course
Install Docker Desktop WSL2 and VS Code on Windows 11
Install Docker and VS Code on Ubuntu 22.04
Clone the Repository and Run lab doctor
Launch Your First Demo
Troubleshooting GUI Docker Volumes
Module 1 ROS2 Fundation
How These ROS2 Concepts Are Used in the Lab
Differences Between ROS and ROS2 (10:51)
ROS and ROS2 Distributions
Create a ROS2 Workspace (9:19)
Create a C++ Package and Node (37:39)
Topic Publisher/Subscriber in C++ (37:30)
Create a Python Package and Node (30:00)
Topic Publisher/Subscriber in Python (21:47)
Create a Custom Interface (11:47)
Create a Service in Python (15:38)
Create a Service in C++ (17:55)
ROS2 Parameters (29:57)
Create a Launch File (30:50)
Module 2 Docker for Robotics
You Do Not Need to Understand Docker First
Why Docker for Robotics (22:32)
What Is Docker Under the Hood (13:19)
How to Run a Container (17:45)
Volumes: Making Data Persistent (19:26)
GUI Applications in Docker (12:43)
Multi-Container Robotics with Docker Compose (33:59)
Using Docker in VS Code (13:31)
Common Docker Commands Cheatsheet
Module 3 Design a Robotic Cell in Simulation
The Workcell Architecture
The UR5, the Depth Camera, and MoveIt (81:24)
Add the Robotiq Gripper to the UR5 (62:51)
The World, and the LinkAttacher Workaround (15:34)
Make Your Packages Portable
What You Just Built: the ros2_control Stack
Module 4 ROS2 Control and MoveIt2
Write an IK Node with MoveIt2 in C++
Test Inverse Kinematics with the UR5 (20:46)
Simulate Grasping with LinkAttacher
Checkpoint: You Said WHERE. You Never Said HOW.
Module 5 Develop a Blind Pick and Place with 6-Axis Robot
Get the GitHub Repo if you are Running Locally in Ubuntu 22.04 and Use MoveIt Setup Assistant
The Anatomy of a Blind Pick-and-Place Cycle
Run Pick-and-Place with the UR5 and the Robotiq (8:26)
Collision Objects, and the Planning Scene (23:37)
Upgrading the MoveIt Config for Industrial Planners
Cartesian Motion: Commanding the HOW (30:20)
Choose Your Planner: PTP, LIN, and the Trap Pilz Sets
Checkpoint: What Is Still Fragile
Module 6 Develop a Vision Guided Pick and Place
From Pixel to Robot Base Frame
Point Cloud Library and 3D Processing in ROS2 (52:12)
Pick-and-Place with the UR5, the Robotiq and the 3D Camera (31:58)
Vision + a Planner you Choose for Reliable and Industrial Apllication
Checkpoint: What Vision did not Fix
Module 7 The Behavior Tree Architecture for Robotics
The Task is Data: Why Industrial Applications are Not One Big Script
Meet industrial_bt_framework
The Adaptation Layer: a Bridge and Perception Adapter
The Task as a Tree: Run It
Checkpoint: One Framework Many Robots
Module 8 Capstone Portfolio
What you Have Built
Capstone Brief Build Your Vision Guided Application
How to Publish This Project on GitHub
How to Present This Project in Your Portfolio
Reference Repositories and Docker Images
Wrap Up and Next Steps
Module 9 Simulation to Reality: Build real Robotics task with 6Axis Robot (FR3WML + SoftGripper + Suction cup)
How to Study This Module Without Owning the Hardware
Simulation to Reality — Building a Real Industrial Pipeline (9:06)
Setup Communication Between PC and Robot Controller (8:22)
Understanding the Robot Driver Layer (26:54)
Create a Bridge Between MoveIt and the Robot Controller (33:50)
Gripper Hardware Setup (6:54)
Bridging Digital Outputs to ROS2 Gripper Control (20:54)
Adding a Gripper and Camera to the FR3WML (18:17)
Designing a Real ROS2 Robot Architecture with MoveIt (12:21)
Integrating a Gripper into MoveIt (47:59)
Control Robot Speed from ROS2 and MoveIt (24:33)
Move the Real Robot with MoveIt Inverse Kinematics (22:42)
Jetson Orin Nano Setup for RealSense Streaming (31:24)
From Camera Streaming to Local AI Inference (29:47)
Create the Inference Container on Jetson (21:44)
3D Pose Estimation with YOLO and RealSense (17:56)
Handling Real Images Noise and 3D Pose Publishing (17:29)
6D Pose Estimation with YOLO and RealSense (36:21)
Industrial Pick and Place Framework Bottle and Crate (29:08)
From Monolithic Code to an Industrial Behavior Tree Framework (28:41)
Camera Hand-Eye Calibration: From Simulation to Real (15:30)
From Blind to Vision-Driven Pick-Place (Bin Picking) (19:17)
Optimizing the Pick-and-Place: Speed, Smooth Motion, and Architecture (13:46)
What You Have Built in the Full Stack Robotics Program
Bonus — Model Your Own Robot: URDF from Scratch to ros2_control
Introduction to URDF (7:41)
Strategy: Modelling a Robot Nobody Has Modelled (8:20)
Your First Links and Joints, From Primitives (12:48)
Visualize the Robot in RViz (13:44)
Joint State and Robot State Publisher (10:24)
Complete the 6-Axis Arm (19:59)
Simplify the Model With Xacro Macros (15:05)
Model a Gripper as End Effector (22:56)
Make Your Packages Portable
Inertias That Do Not Wreck the Simulation (22:01)
The Gazebo Plugin and the ros2_control Seam (14:12)
Spawn Your Robot in Gazebo
ROS2 Control: Joint Group Position Controller (54:23)
ROS2 Control: Gripper Action Controller (16:20)
ROS2 Control: Joint Trajectory Controller (12:20)
Send trajectory_msgs from a C++ Script (11:43)
Create a MoveIt2 Configuration Package (55:40)
Interface MoveIt2 with Gazebo (18:24)
Pick-and-Place with a Custom Robot (30:27)
Bonus Project — Robotics × LLM: Drive an Arm in Plain English (xArm6 + Ollama)
Creating the ROS2 Workspace & Cloning xarm_ros2 (12:02)
Building the Custom Package my_xarm6: Robot, World, and Camera Setup (63:25)
Creating the my_xarm6_app Package: First Motion Node (26:46)
CNC Motion Node: Drawing Circles and Squares with Constant Orientation (37:50)
Blind Pick and Place: Fixed Object Positions (29:03)
Vision Integration with OpenCV: Depth Reconstruction via Intrinsics (38:33)
Vision-Based Pick and Place + Custom Service Definition (35:17)
Introduction to Ollama and LLM Integration (12:17)
LLM Task Pipeline: Designing the Action-Oriented Architecture and System Prompt engineering (55:45)
LLM-Driven Pick and Place: Updating System Prompt + Vision + Motion Integration (45:48)
Test Robotics Tasks with LLM Ollama integrated in ROS2 (21:26)
General Task LLM: Unified Prompt and Full Robot Commanding (CNC, pick place with vision, end effector control) (24:59)
Teach online with
Differences Between ROS and ROS2
Lesson content locked
If you're already enrolled,
you'll need to login
.
Enroll in Course to Unlock