Core Concepts
Understand how projects, scenes, models, and PLC programs work together
Core Concepts
Before diving in, here's how the main pieces of Sim Assist fit together.
Projects and Toolboxes
Everything starts with a Project. A project contains your scenes, models, and PLC programs.
There are two types:
- Project — A complete simulation (e.g., a conveyor sorting line with scenes, PLC logic, and models)
- Toolbox — A reusable collection of models (e.g., a set of conveyor components you can use across multiple projects)
[IMAGE: Dashboard showing project list with both Project and Toolbox types visible]
Scenes
A Scene is your 3D workspace. You build your automation layout here by adding models from your project or the system toolbox.
Each scene has a Component Tree — a hierarchy of all the models placed in the scene. You can nest models inside each other to create parent-child relationships (e.g., a sensor mounted on a conveyor).
[IMAGE: Scene editor with component tree panel on the left showing nested models]
Models
A Model is a 3D object with configurable parameters. Models come from:
- System Toolbox — Built-in components (conveyors, sensors, actuators) available to all users
- Marketplace — Components shared by other users
- Your Project — Models you import yourself (GLB/GLTF files)
Each model has three types of parameters:
Parameters
General settings like position, rotation, and scale. These control how the model looks and where it sits in the scene.
Input Nodes
Sensors and detection zones that read from the scene and feed data into your PLC program. Examples:
- Photoelectric sensor → tells your PLC "a box is here"
- Position sensor → tells your PLC the current position of an actuator
Output Nodes
Actuators and conveyors that receive commands from your PLC program and drive the scene. Examples:
- Conveyor → your PLC sets the speed
- Cylinder → your PLC controls extend/retract
- Spawner → your PLC triggers product creation
[IMAGE: Parameter editor showing the three tabs: Parameters, Input Nodes, Output Nodes]
PLC Programs
A PLC (Programmable Logic Controller) contains your control logic. You write it in either:
- FBD (Function Block Diagrams) — Visual, drag-and-drop
- ST (Structured Text) — Code-based
Each PLC program has input variables (connected to input nodes) and output variables (connected to output nodes).
How It All Works Together
┌─────────────┐ ┌──────────────────┐ ┌──────────────┐
│ Input │ │ PLC Program │ │ Output │
│ Nodes │────►│ │────►│ Nodes │
│ │ │ Your Logic │ │ │
│ (sensors) │ │ (FBD or ST) │ │ (actuators) │
└──────┬───────┘ └──────────────────┘ └──────┬───────┘
│ │
│ ┌──────────────┐ │
└──────────────│ 3D Scene │────────────────┘
│ (physics) │
└──────────────┘Every frame (60 times per second):
- Sensors read — Input nodes detect objects in the scene
- Program runs — Your PLC logic processes the sensor data
- Outputs drive — Conveyors move, actuators extend, spawners create
- Physics updates — Objects move, collide, and interact
- Scene renders — You see the result in 3D
[IMAGE: Animated diagram or screenshot of a running simulation showing the cycle in action]
The Marketplace
The Marketplace lets you share and discover reusable components:
- Browse toolboxes and projects from other users
- Publish your own models to earn credits
- Acquire free or paid components for your projects
System toolbox components (like the built-in conveyor set) are always available — no purchase needed.
[IMAGE: Marketplace browse page showing available toolboxes]
Next Steps
- Quick Start — Build your first simulation in 5 minutes
- Scene Editor — Learn the 3D workspace
- PLC Programming — Start programming