> For the complete documentation index, see [llms.txt](https://docs.robpod.cloud/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.robpod.cloud/simulation/off-line-programming.md).

# Off-Line Programming

Robpod Studio can be used to perform **off-line programming** using the [connected simulator ](/simulation/connect-a-simulator.md)when a real robot is not available.

Integrated simulator functions for off-line programming are provided by the ![](/files/I7y6Y5nf9aiOmzJ783wu) **Simulator Tool Bar**:

<table data-header-hidden><thead><tr><th width="234"></th><th></th></tr></thead><tbody><tr><td><img src="/files/iYMzbtX1utHAv7alO4zr" alt=""> <strong>Run On Simulator</strong></td><td>Run the selected robot script inside the simulation environment.</td></tr><tr><td><img src="/files/ljlJxh05dzYtqTjE3dSC" alt=""> <strong>Add Joint Pose</strong></td><td>Add current simulated robot joint pose to robot script.</td></tr><tr><td><img src="/files/qyVebg7MUQzMe7b39snv" alt=""> <strong>Add Tool Pose</strong></td><td>Add current simulated robot tool pose to robot script..</td></tr><tr><td><img src="/files/ScnJ2nnVaXO4hWJ7eGGK" alt=""> <strong>Add MoveJ</strong></td><td>Add MoveJ command with current simulated robot joint pose to robot script.</td></tr><tr><td><img src="/files/tWfoSHwtp7uA1PVPUPDG" alt=""> <strong>Add MoveL</strong></td><td>Add MoveL command with current simulated robot tool pose to robot script.</td></tr><tr><td><img src="/files/Qh5Nz8ppxOOwPiZGDyTH" alt=""> <strong>Move To</strong></td><td>Move simulated robot to selected target position. Place mouse cursor on script position to determin the target pose.</td></tr></tbody></table>

<figure><img src="/files/4PG2UKqcbSYxU7FVcUtQ" alt=""><figcaption></figcaption></figure>

In order to develop your robotic application with off-line programming approach:

* move the simulated robot inside the simulator environment to target positions
* use ![](/files/I7y6Y5nf9aiOmzJ783wu) **Simulator Tool Bar** functions to acquire target positions and compose the robot script
* run the program inside the simulation environment to test the application
* run the program on real robot

{% hint style="info" %}
[Live Auto Completion](/advanced-scripting/live-auto-completion.md) can be used also when a simulator is connected to acquire live robot position using the simulator.
{% endhint %}

{% embed url="<https://www.youtube.com/watch?v=vVp8Fv1z5FA>" %}
