# FANUC Robots

## Overview

FANUC Robot backups include both text and binary files. Copia provides Native Git source control features for these devices.

FANUC robot controllers require a File List to determine what files on the controller to include and exclude, as well as the contents to exclude from the compare. Copia provides two default File Lists to get you started:

* **Copia - FANUC Robot (FMD)**
  * This File List is for controllers equipped with the FANUC Filtered Memory Feature, and it will backup the MDB: and FMD: drives while only comparing the filtered FMD: drive.
* **Copia - FANUC Robot (non-FMD)**
  * This File List can be used for any controller and it performs a backup of the MD: drive. It is likely that this File List will identify undesired changes during comparison, so it is recommended to use this as a starting point for a custom File List to filter out unwanted change detection.

{% hint style="info" %}
The FANUC Filtered Memory feature is an optional add-on that may or may not be included on your controller.  It can be purchased from FANUC and enabled in many cases.  The benefit of this feature is it filters "noisy" binary data which allows a better comparison of controller changes. \
\
If you are not sure which file list to use, you can FTP to your robot controller, and then perform a "`cd fmd:`" command.  If this works, and the FMD: drive exists, then you should use the (FMD) file list. &#x20;
{% endhint %}

More information about managing default File Lists and creating custom ones is covered in the [File List](https://docs.copia.io/docs/devicelink/sitesandagents/sites/file-lists) section.

## Agent Requirements

Below are the Agent system requirements to configure a Copia Agent for the backup of FANUC robot controllers:

* The Agent should be tested to confirm that it can backup the desired files via an FTP Client.

## New Project Configuration

To configure a FANUC Robot project, you need a repository with a project folder to store the data. The name of the folder is usually similar to that of the robot or controller. Your Project will need to point to that folder.

{% hint style="success" %}
The folder can be created during the project creation process.
{% endhint %}

Click either of the *Add a Project* buttons in the Projects tab.

<figure><img src="https://3704730939-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4lSQNVI3DZ15V7kjkMCA%2Fuploads%2Fne2KmUwhbSS6N4IXtece%2FWebApp_Projects_FANUC_AddProject.png?alt=media&#x26;token=80e5f56f-c026-4621-b3db-5a09d59b4576" alt=""><figcaption></figcaption></figure>

The *Add a new project* configuration dialog will appear which allows you to fully configure the project, devices and job for the project.

{% hint style="info" %}
Any items highlighted with an asterisk are required.
{% endhint %}

<figure><img src="https://3704730939-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4lSQNVI3DZ15V7kjkMCA%2Fuploads%2FcwaXoFHfSdW3yPKP7gF1%2Fnew_project_flow_a.png?alt=media&#x26;token=600d35fd-b785-4180-826b-1d53f4d0b972" alt=""><figcaption></figcaption></figure>

This is a multi-step process with each section explained in detail.  At any time, you can edit the prior section of this workflow.   &#x20;

{% hint style="info" %}
The project can be edited after creation.  Devices and Jobs can also be edited or created directly, using the Devices or Jobs tab.  The steps for creation are similar to the steps provided below for those sections.
{% endhint %}

### Define the Project

To get started, we will first select the *Project Type* from the list provided, and then select an *Agent*.  If you have not already created an Agent, you can create and assign an Agent at a later time.  See more about this in the [Agents ](https://docs.copia.io/docs/devicelink/sitesandagents/agents)section of the documentation.

When complete, press *Save and Continue*.

<figure><img src="https://3704730939-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4lSQNVI3DZ15V7kjkMCA%2Fuploads%2FLBpf8lt130EeU2bs6QOg%2Ffanucrbt_ips_1.png?alt=media&#x26;token=bf72ffc3-6aa0-48d3-8c20-ddee873f48fc" alt=""><figcaption></figcaption></figure>

You will now select the Project Path, which is the location (Repo/Branch) that the project is, or will be stored.

{% hint style="info" %}
You can edit the previous steps at any time.
{% endhint %}

<figure><img src="https://3704730939-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4lSQNVI3DZ15V7kjkMCA%2Fuploads%2FyIH8S8XlmireNGeMmm3D%2Fbeckhoff_pp_1.png?alt=media&#x26;token=9775da08-f189-47a9-a922-d1a939515b73" alt=""><figcaption></figcaption></figure>

For FANUC Robots, you can either select an existing folder, or create a new empty folder (so that you can upload a copy of your project data from the device) for an initial revision.  You can make this choice after you have selected the repository and branch for the project folder.&#x20;

In this example, we will create a new empty project folder.  Once complete, press *Save and Continue* to proceed.

<figure><img src="https://3704730939-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4lSQNVI3DZ15V7kjkMCA%2Fuploads%2FoO2WBg57MgcOqHHPACQn%2Ffanucrbt_pp_2.png?alt=media&#x26;token=35bc0663-d695-438e-9508-e23ef537b90d" alt=""><figcaption></figcaption></figure>

The project details allows you to update the Project name, and description if desired.

As mentioned in the [Overview](#overview), FANUC Robot projects require a **File List** to determine what files on the device to include/exclude, or exclude from compare. Copia provides two default filelists for FANUC Robots.  Select the one that applies to your controller, using the information provided in the [Overview ](#overview)section above.  &#x20;

More information about file lists can be found in [File List](https://docs.copia.io/docs/devicelink/sitesandagents/sites/file-lists) section.

Press *Save and Continue* when complete.

<figure><img src="https://3704730939-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4lSQNVI3DZ15V7kjkMCA%2Fuploads%2FavS1FiOvVN8IKePhlMiS%2Ffanucrbt_pd_1.png?alt=media&#x26;token=2617d7e6-6311-47a8-b577-7ec6eadbf4a0" alt=""><figcaption></figcaption></figure>

### Define the Device(s)

The Device Setup section is for defining the device information (PLC, network, authentication, etc.) that is in your project.  If you have pre-created devices, you can add existing devices, otherwise you can *Add a Device* as seen. &#x20;

Fill in all required field, and any fields that are applicable. &#x20;

Enter a Name and Description for the device. These typically reference the actual robot or controller name. If the controller requires a username or password, enter it in the fields as shown. Finally, the Communication Path to the Device will require the IP address of the robot controller.

Press *Save Device* when complete.

<figure><img src="https://3704730939-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4lSQNVI3DZ15V7kjkMCA%2Fuploads%2FM4UBOhARO9WVBXTHLJVR%2Ffanucrbt_ds_1.png?alt=media&#x26;token=8daeea2b-dd11-43e4-a4e4-f03693ef853c" alt=""><figcaption></figcaption></figure>

### Define the Job(s)

Creating Jobs is similar for all vendor types, and is described in the [Creating Jobs](https://docs.copia.io/docs/devicelink/jobs/creating-jobs) section.  It is recommended to review that section while completing a job configuration, and press Save to save the job.  You can create more than one job for a device if desired. &#x20;

### Submit the Configuration

Once complete, press *Submit Project Setup* to create the Project, Device(s) and Job(s).

<figure><img src="https://3704730939-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4lSQNVI3DZ15V7kjkMCA%2Fuploads%2FMlQI1U2DKycYllZBGiMO%2Ffanucrbt_submit_1.png?alt=media&#x26;token=568e05e0-a776-4be9-8fdc-d179910769cb" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
Don't forget to enable/disable the [Watch ](https://docs.copia.io/docs/projects-and-devices#watching-a-project)button, based on your preferences for project [Notifications](https://docs.copia.io/docs/devicelink/administration/notifications).
{% endhint %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.copia.io/docs/devicelink/basic/fanuc-robots.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
