Zum Hauptinhalt springen

Fanuc FOCAS (CNC)

FOCAS = Fanuc Open CNC API Specification. Es ist die facto Standard-API zum Auslesen von Spindellast / Achsposition / Bearbeitungsprogramm / Alarmen / OEE-Kennzahlen aus Fanuc-CNC-Controllern (Computer Numerical Control). Auch Werkzeugmaschinen-OEMs wie Mazak, DMG MORI und Doosan setzen Fanuc-Controller ein und legen dann dieselbe Schnittstelle offen.

Aktueller Status: Stub-Treiber (keine direkte Kommunikation möglich

Der FOCAS-Treiber dieses Gateways ist ein Stub. Das Wire-Protokoll von FOCAS ist nicht öffentlich, und Fanuc gibt die FwLib (Focas Library) nur an Lizenznehmer als C-Bibliothek heraus. Es ist nicht geplant, ein natives FwLib-JNI in das PlantPulse Edge zu integrieren, da dieses als einzelnes Jar ausgeliefert wird.

Empfohlener Integrationspfad: Verwenden Sie den MTConnect Adapter (HTTP/XML) oder die OPC-UA-Option neuerer Fanuc-Controller.


Empfohlener Integrationspfad​

Option 1. MTConnect Adapter / Agent (häufigstes Muster — empfohlen)​

Die meisten modernen Werkzeugmaschinen / Fanuc-CNCs nutzen MTConnect (ANSI/MTC1.4) als primären Integrationspfad. Fanuc stellt einen eigenen FOCAS-MTConnect-Adapter kostenlos bereit, und auch OEMs (Okuma, DMG MORI, Mazak SmartBox) folgen diesem Standard.

Zu verwendender PlantPulse-TreiberSeite
HTTP (REST-Polling, XML-Parsing in Formel oder in der Empfangspipeline)HTTP-Push

Option 2. Fanuc-OPC-UA-Option oder KEPServerEX Fanuc Suite​

Neuere Fanuc-Controller bieten optional einen OPC-UA-Server an. Ältere Controller werden über kommerzielle Gateways wie Kepware KEPServerEX Fanuc Suite oder Matrikon FOCAS OPC Server angebunden.

Zu verwendender PlantPulse-TreiberSeite
OPCUAOPC-UA

Option 3. Sidecar + gRPC (bei eigener Lizenz)​

Wer über eine FwLib-Lizenz verfügt, kann ein eigenes JNI-Modul als separaten Sidecar-Prozess (z. B. focas-grpc-server) starten und die Ausgabe von PlantPulse pollen lassen.


Welche Option wählen?​

SituationEmpfehlung
OEM (Mazak SmartBox / DMG MORI Celos / Okuma) betreibt bereits einen MTConnect-AgentMTConnect → HTTP
Neuerer Fanuc 30i, OPC-UA-Option nachrüstbarFanuc OPC UA → OPCUA
Älterer Fanuc 0i, Lizenz-SI vorhandenKEPServerEX Fanuc Suite → OPCUA
Eigene FwLib-Lizenz / benutzerdefinierte Daten erforderlichfocas-grpc Sidecar → HTTP
Nur einfache Verfügbarkeit (0/1) erforderlichDigitalausgang des Controllers → Modbus/Ethernet-IO-Modul

Häufige Datenpunkte bei MTConnect​

Typische DataItems aus der /current / /sample-Antwort-XML des MTConnect-Agents.

DataItem-NameBedeutungPlantPulse-Format
Xact, Yact, ZactIstposition jeder Achse (mm)Float
SspeedSpindeldrehzahl (rpm)Float
SloadSpindellast (%)Float
Sovr, FovrSpindel-/Vorschub-Override (%)Integer
executionAusführungsstatus (ACTIVE / INTERRUPTED / READY)String
programName des aktuellen Programms (z. B. O1234)String
modeMANUAL / AUTOMATIC / MDIString
Tool_numberAktuelle WerkzeugnummerInteger
blockAktueller Block (NC-Zeile)String
alarmAlarmcode (z. B. PS 0506)String

Stub-Registrierung (zur Referenz)​

EingabefeldWas eintragen?
IP-Adresse(nicht verwendet, Dummy)
Port8193 (FOCAS-Standard — Dummy)
Automatische ErfassungDeaktivierung empfohlen

Häufige Probleme​

SymptomMögliche UrsacheLösung
Nach FOCAS-Registrierung keine WerteStub-TreiberNeu registrieren über MTConnect (HTTP) oder KEPServerEX (OPCUA)
XML-Parsing bei MTConnect schwierigXML-Namespace + mehrere DataItemsXPath / Formel-Nachbearbeitung über HTTP-Push
Spindellast bleibt auf 0Sload-Zuordnung im Adapter fehltPMC-Einstellung von Fanuc prüfen — axis_event im Adapter-Config ergänzen
Programmname verstümmeltEncoding des Fanuc-Controllers (z. B. Shift_JIS)Charset-Option auf Adapterseite prüfen
Alarmcode nur zweistelligTrennung der condition-Kategorie in MTConnect<Condition>-Bereich im XML separat parsen
KEPServer-Lizenz abgelaufen7-Tage-Demo von KEPServerEXLizenz erneuern oder permanente Lizenz kaufen

Nächste Schritte​