Robot demonstrations from my research and lab work.
Two Piper arms sorting three cubes onto plates. The overlay shows the natural-language instruction, the program the LLM generated from it, and the per-arm schedule the orchestrator runs. Each arm runs in its own ROS domain under one shared workspace. An LLM turns instructions into a sequential program (Code-as-Policies); rule-based routing assigns arms and inserts arm-to-arm handovers, and orchestration decides what runs in parallel. Because these layers are separate, changing arm count or collision checks leaves the rest untouched.