Fanuc RMI Demo

Remote Motion Interface, from C# or Python

Detecting backend…
Right-click a block: Show SDK code

Move a Fanuc robot from your own C# or Python application

The Remote Motion Interface (RMI) of Fanuc controllers lets a PC send motions to the robot over Ethernet. The UnderAutomation Fanuc SDK speaks RMI for you: a few lines of code connect to the controller, queue joint and linear motions, wait for inputs, write outputs and follow each instruction while the robot runs. This page is a complete application built with it. Its source code is on GitHub.

Get the Fanuc SDK, free for 30 days Read the RMI documentation

Nothing to install on the robot

No TP program to write, no Karel, no PCDK or Robot Interface on the PC. The controller only needs the option R912 Remote Motion Interface. It also works with a ROBOGUIDE virtual robot.

The PC decides the positions

Palletizing with a pattern computed on the fly, pick and place guided by a camera, machine tending driven by an MES: the targets come from your software, not from taught points.

The same API in C# and Python

One .NET library and one pip package. Linear, joint, circular and spline motions, FINE and CNT terminations, frames, I/O, registers and payload.

How this demo works

  1. Build a sequence with the blocks: motions, waits, digital outputs, loops and a pallet pattern.
  2. Run it in demo mode, on a simulated robot in your browser.
  3. Connect your robot: download the .NET or the Python backend, start it on a PC of the robot network, enter the IP address of the controller.
  4. Read the code: the C# and Python tabs give the whole program of your sequence, and each button shows the SDK calls behind it.

Questions

What does my Fanuc robot need?

The option R912 (Remote Motion Interface), the controller in AUTO mode with the teach pendant disabled, and an Ethernet link to the PC on TCP port 16001.

Can I try it without a robot?

Yes. Without a backend, this page drives a simulated robot. With a backend, it also connects to a ROBOGUIDE virtual robot.

Is the demo open source?

The page, the .NET backend and the Python backend are on GitHub. The SDK they use runs 30 days without a license key.

RMI or Stream Motion?

RMI when the controller plans a few motions that you send, like in a TP program. Stream Motion (option J519) when your PC gives the position at every cycle. The SDK does both.


      Read the documentation →
    

Connect to your robot

This page is running in demo mode, on a simulated robot. A web page cannot talk to a robot: a small backend on your PC does it, with the UnderAutomation Fanuc SDK. Pick one, both do the same.

  1. Download and start a backend. It listens on http://localhost:16080.
  2. If your browser asks to access devices on your local network, allow it.
  3. Come back here and press Retry.

Settings

Saved in fanuc-rmi-demo.json, next to the backend.

Run on the real robot?