Overview of Fanuc Focas protocol

The following image shows the data source input window for the Fanuc Focas protocol:

145941126667.png

The following device types are supported:

  • FS31i-A

  • FS35i-B

  • FS0i-D

  • FS32i-B

  • PMi-A

  • FS30i-B

  • FS0i-F Plus iHMI

  • FS0i-F

  • FS0i-F Plus

  • FS30i-B 32AX

  • FS30i-B 48AX

  • FS30i-B iHM

  • FS30i-B Plus

  • FS31i-B Plus

  • FS31i-B

  • FS31i-B5 Plus

  • FS31i-B5

  • FS31i-LB

  • FS31i-PB

  • FS31i-WB

  • FS32i-B Plus

In order to connect a Fanuc Focas device, you need to select the Fanuc Focas protocol and enter the following data source parameter:

Parameter

Description

IP Address

The IP address (and optional port – separated by ‘:’ ) of the device must be filled in Datasource.

Fauc Focas data point parameter

The following image shows the Fanuc Focas data point parameter window:

145978426251.png

Follow the simple rules to fill the parameters for the Fanuc Focas:

  1. Choose a predefined component for the Datapoint Address.

  2. For every “*” or “?” in the listed item an extra field is displayed, which must be filled as per above example screenshot.

  3. The field “Datapoint Address” is the final address string and displayed read only. It is the result of selected address with combo boxes and user defined parts.

  4. The fields “Type” and “Type Transformation” are limited to the possible types, depending on the selection of the address component.

The following table shows the parameter of the all components, including possible datatype, explanation and example:

Address

Data type

Comment

position.<axisnumber>

Example: position. *(0...99)

  • int32

  • default supported

The function can read the position of a defined axis or of all axis.

Note: When reading ALL_AXIS the output structure is model dependent.

programblock.<number>

number values:

1…Program name

2…Block number

  • string(1)

  • int32(2)

  • default supported

The function reads always both items.

alarmstring

  • string

  • default supported

These two alarm functions are mapped to a string.

pmcdata.<adr_type>. <startaddress>

Example: pmcdata. *(0...99; 0...65535)

Depends on transformation:

  • int8

  • int16

  • int32

  • float

  • double

With this function you can read different type of data from PMC address range.

The "adrtype" specifies different address ranges. For the various models of CNC machines different ranges of different size exist. It is the responsibility of the user to configure the address in the correct range. The driver will not check range depending on the model.

modal.<blocknumber>.<number>

number values:

1…data, *(0...3)

2…flag1, *(0...3)

3…flag2, *(0...3)

  • int32(1)

  • uint8(2)

  • uint8(3)

  • default supported

This function call is rather complex and comprises a lot or variation. The Fanuc Focas driver only supports the type = 108 variant for current active T code. The resulting data comprises a "4-byte"data field and two "1-byte" flag fields.

The interpretation of these fields is machine model dependent, but this must be done by the application.

statinfo.<number>

number values:

*(0...99) see comment for value

meaning.

  • int16

  • default supported

All elements are read with one function call.

There are several more but according to requirements they are not needed.

  1. hdck: Status of manual handle retrace

  2. tmmode: T/M mode selection

  3. aut: AUTO/MANUAL mode selection

  4. run: Status of automatic operation

  5. motion: Status of axis movement,dwell

  6. mstb: Status of M,S,T,B function

  7. emergency: Status of emergency

  8. alarm: Status of alarm

  9. edit: Status of program editing

param.<paramnumber>.

<axisnumber>

Example:

param. *(0...32767;0...99 )

Depends on transformation:

  • boolean

  • int8

  • int16

  • int32

The parameters are dependent on the axis or axis independent (axisnumber 0).

For axis specific parameter, it is possible to read the parameter for all axis or only for a specific axis.

diag.<diagnumber>.

<axisnumber>, *(0...32767;0...99 )

Depends on transformation:

  • boolean

  • int8

  • int16

  • int32

  • float

There are diagnosis values with the axis dependent, and axis independent

(axisnumber 0).

For axis specific diagnosis values, it is

possible to read the values for all axis

or only for a specific axis.

feedrate

  • int32

  • default supported

One function for one value.

spindlespeed

  • int32

  • default supported

One function for one value.

sysinfo

  • string

Maximum length of read value is 20 characters. format:<cnc_type> <series> <version>  <mt_type>

NOTE

You need to ensure the parameters entered are valid for Fanuc Focas protocol.