RobotStudio is a didactic robotics and C#/.NET learning platform.
Version 1.0.0 delivers the first stable vertical slice: a generic three-axis Cartesian robot can be scripted, validated, simulated, inspected through CLI output, and visualized in a WPF desktop 3D viewer.
The project is intentionally educational. It is designed to help students understand both robotics concepts and software architecture: domain modeling, motion planning, deterministic simulation, scripting, UI boundaries, tests, and future hardware integration.
- Simulate a generic Cartesian robot with X/Y/Z axes.
- Validate physical axis limits for position, velocity, and acceleration.
- Observe acceleration-aware Cartesian and XY plotter movement using triangular or trapezoidal velocity profiles.
- Run
HOME,MOVE, andWAITcommands. - Write simple DSL scripts such as:
HOME
MOVE X=120 Y=80 Z=40 SPEED=90
DRIVE X=160 Y=80 HEADING=45 LIN=120 ANG=90
SCARA SHOULDER=45 ELBOW=30 SPEED=80
ARM BASE=45 SHOULDER=30 ELBOW=-20 SPEED=80
DELTA A=30 B=60 C=90 SPEED=80
DRONE X=120 Y=80 Z=40 YAW=90 SPEED=100 YAW_SPEED=45
WAIT 500- Run the CLI to inspect commands, timeline steps, final state, and final position.
- Open the WPF desktop viewer to inspect the Cartesian robot in 3D.
- Open the first XY Plotter viewer as a beginner two-axis model.
- Open the first Differential Drive viewer for a beginner mobile-robot simulation.
- Open the first SCARA viewer for introductory articulated joint-space simulation.
- Open the first Simple Articulated Arm viewer for three-joint articulated robot lessons.
- Open the first Delta Robot viewer for simplified parallel-actuator simulation.
- Open the first Drone viewer for simplified 3D aerial pose and yaw simulation.
- Load local teaching examples from every available desktop viewer.
- Load and save
.robotor.txtscripts in the desktop app. - Use keyboard shortcuts for active viewer playback, frame stepping, validation, simulation, script files, zoom, and 3D camera controls.
- Read clearer validation summaries when scripts contain syntax errors, invalid arguments, or physical limit violations.
- Rotate, zoom, and reset the camera.
- Use manual jog buttons and a direct command console.
- Inspect playback frames, state, position, charts, planned path, workspace, TCP, and didactic tooltips.
- Export and validate playback snapshots as JSON.
Current stable version: 1.0.0.
This release is stable for the first educational goal: simulate and inspect the first robot model without real hardware.
Implemented:
- domain model;
- Cartesian robot profile;
- motion planner;
- deterministic simulator;
- simple DSL;
- CLI workflow;
- desktop 3D viewer;
- robot catalog metadata;
- first XY Plotter domain, motion, and viewer path;
- Differential Drive domain, motion planner, deterministic simulator, and 2D viewer;
- SCARA domain, kinematics, motion planner, deterministic simulator, DSL support, playback sampler, and 3D viewer;
- Simple Articulated Arm domain, forward kinematics, motion planner, deterministic simulator, DSL support, playback sampler, and 3D viewer;
- Delta Robot domain, simplified parallel kinematics, motion planner, deterministic simulator, DSL support, playback sampler, and 3D viewer;
- Drone domain, 3D pose model, yaw orientation, coordinated motion planner, deterministic simulator, DSL support, playback sampler, and 3D viewer;
- 6-DOF Industrial Arm domain, simplified forward kinematics, coordinated joint planner,
ARM6DSL support, deterministic simulator, playback sampler, local examples, and 3D viewer; - shared desktop rendering helpers for orbit cameras, simple meshes, paths, and reachable workspaces;
- shared playback contracts for cross-family simulation summaries;
- local desktop teaching examples and selectors for available training viewers;
- playback snapshots;
- didactic overlays, charts, timeline, and tooltips;
- future boundaries for G-code and hardware.
Not implemented yet:
- real serial communication;
- Arduino or ESP32 firmware/protocols;
- G-code parser;
- richer industrial-arm graphics, inverse kinematics, singularity analysis, and collision visualization.
- planned Cylindrical, Ackermann Steering, Omnidirectional, Self-Balancing, Stewart Platform, and Mobile Manipulator simulations.
Requirements:
- Windows;
- .NET SDK matching
global.json.
From the repository root:
dotnet run --project src/RobotStudio.DesktopThe desktop app starts with a robot selection screen. Cartesian Robot, XY Plotter, Differential Drive Robot, SCARA Robot, Simple Articulated Arm, Delta Robot, and Drone are available in the current development build.
The WPF desktop viewer is Windows-only. The portable solution validates the CLI, domain, motion, simulation, scripting, hardware boundary, and their non-desktop tests on Windows, Linux, and macOS.
Build the portable solution:
dotnet build build/RobotStudio.Portable.slnxRun portable tests:
dotnet test build/RobotStudio.Portable.slnxBuild a portable CLI release artifact:
powershell -ExecutionPolicy Bypass -File scripts/release/build-cli-artifact.ps1 -Version 1.0.0 -Runtime linux-x64Supported initial CLI release runtimes:
win-x64linux-x64osx-x64
Run the built-in simulation example:
dotnet run --project src/RobotStudio.CliOther useful CLI commands:
dotnet run --project src/RobotStudio.Cli -- example
dotnet run --project src/RobotStudio.Cli -- validate examples/cartesian.robot
dotnet run --project src/RobotStudio.Cli -- simulate examples/cartesian.robot
dotnet run --project src/RobotStudio.Cli -- playback examples/cartesian.robot 500
dotnet run --project src/RobotStudio.Cli -- export-playback examples/cartesian.robot 500 playback.json
dotnet run --project src/RobotStudio.Cli -- validate-playback playback.jsonBuild:
dotnet buildRun tests:
dotnet testCheck formatting:
dotnet format RobotStudio.slnx --verify-no-changesRobotStudio 1.0.0 is distributed as a Windows installer for the WPF desktop app.
powershell -ExecutionPolicy Bypass -File scripts/release/build-windows-installer.ps1 -Version 1.0.0 -Runtime win-x64The installer is generated at:
artifacts/release/RobotStudio-1.0.0-win-x64-setup.exeThe release script also generates:
artifacts/release/RobotStudio-1.0.0-win-x64-setup.exe.sha256When a version tag such as v1.0.0 is pushed to GitHub, CI builds the Windows installer, builds portable CLI ZIP archives for Windows/Linux/macOS, and publishes a GitHub Release with all .exe, .zip, and .sha256 assets attached.
src/RobotStudio.Domain: pure domain model for robot concepts, commands, state, contracts, domain errors, and the first Cartesian model.src/RobotStudio.Motion: simple motion planning based on domain types.src/RobotStudio.Simulation: deterministic command execution, sampling, playback snapshots, visual states, and scene frames.src/RobotStudio.Scripting: simple educational DSL exposed through a dialect contract prepared for future G-code.src/RobotStudio.Hardware: future hardware integration boundary contracts and planned prototype metadata.src/RobotStudio.Cli: terminal entry point for examples, validation, simulation, playback, and snapshot export.src/RobotStudio.Desktop: WPF desktop app for robot selection and visual robot simulation.tests: xUnit test projects for domain, motion, simulation, scripting, hardware boundaries, and desktop metadata/tooling.docs: product, architecture, use case, testing, CI, and user documentation.
- Changelog
- Documentation Index
- Technical Decisions
- Advanced 3D Visualization
- Use Cases
- Test Map
- User Guide
- Continuous Integration
- Contributing
- Code of Conduct
- Security Policy
RobotStudio is proprietary software. Personal, non-commercial study use is allowed under the RobotStudio Personal Study License.
Commercial, business, organizational, institutional, brand-related, redistribution, sublicensing, and public hosting uses are not allowed without prior written permission from the copyright holder.















