Launch Your First Demo

Launch Your First Demo

Goal

See the industrial workcell running on your own machine: UR5, Robotiq gripper, depth camera, Gazebo physics, MoveIt planning scene in RViz — with one command.

What You Will Build

Your first running instance of the lab's simulation cell (the same one every later module builds on).

Why This Matters

This is the "fast win" the whole course is designed around. From here on, you are never studying in the abstract: every concept in Modules 1–7 explains something that is already running in front of you.

Architecture Layer

Simulation (you are launching: robot description → Gazebo → controllers → MoveIt). You did not build these layers yet — you are consuming them, which is exactly how you would join an existing industrial project.

Files You Will Touch

  • labs/module_00_start_here/commands.md

Files You Should Not Touch Yet

Everything in src/ — next modules open it up layer by layer.

Commands

./scripts/lab start demo

To stop: Ctrl+C in the terminal (give Gazebo a few seconds to shut down).

Step-by-Step Instructions

  1. Run ./scripts/lab start demo.
  2. Wait for two windows: Gazebo (the physics world) and RViz (the robot's "mind": planning scene).
  3. In Gazebo, orbit the camera (mouse drag) and find: the UR5 on its stand, the Robotiq gripper on the wrist, the depth camera above the table, the pick object.
  4. In RViz, find the same robot model — and notice it moves when Gazebo moves it: they are two views of one system.
  5. Optional first interaction: in RViz's MotionPlanning panel, drag the interactive marker and press Plan — watch MoveIt compute a trajectory.
  6. Open a second terminal and peek at the running system:
./scripts/lab exec ros2 topic list

Spot /camera/points (the depth camera), /joint_states (the robot), and the controller topics.

What You Should See

  • Gazebo: the workcell, physics running (the object rests on the table).
  • RViz: robot model, planning scene, no red error spam in the terminal.
  • ros2 topic list: camera topics + joint states + controller topics.

First start can take 30–60 s (software rendering warms up).

How to Modify This for Your Own Application

Nothing yet — but notice what it took to get a full manipulation stack running: one command. When you adapt the lab to your own robot later, keeping this one-command experience is a design requirement, not a luxury; it is what makes a project testable by someone who is not you.

Common Mistakes

  • No GUI appears → 09_troubleshooting_gui_docker_volumes.md (usually xhost +local: on Ubuntu, or WSLg check on Windows).
  • Black Gazebo window for a while on first launch → wait; software rendering is slow to warm up.
  • Machine struggles: close other apps; Gazebo + RViz want RAM.

Checkpoint

You saw the workcell in Gazebo AND the planning scene in RViz, and you listed topics from a second terminal. Run ./scripts/lab check module_00.

Expected Output

A running demo, and the sentence every student should be able to say now: "I can already run a robotics lab on my computer."

Next Step

09_troubleshooting_gui_docker_volumes.md (skim it even if everything worked — you will want to know it exists), then Module 1.

Complete and Continue