Zum Hauptinhalt springen

Atlas Copco Open Protocol (Verschraubung)

Open Protocol ist eine Ende der 1990er-Jahre von Atlas Copco (Schweden) veröffentlichte Standardspezifikation für Verschraubungssteuerungen (tightening). Nahezu alle Drehmomentschlüssel, Schraubspindeln und Elektrowerkzeuge in Montagelinien der Automobil-, Luftfahrt- und Hausgeräteindustrie verwenden diese Spezifikation.

Typische Steuerungen: Power Focus 4000 / 6000 / 8 / Tools Net / FlexController.

Der OP-Treiber dieses Gateway ist auf die Erfassung von Verschraubungsergebnissen (last result) und den Pset-Wechsel ausgerichtet.


Eingabewerte im Registrierungsformular​

EingabefeldWas einzutragen istBeispiel
IP-AdresseIP der Steuerung192.168.0.100
PortOpen-Protocol-Port4545 (Standard)
Zellen-ID (cell-id)Zellennummer in Mehrzellen-Umgebungen1 (bei Einzelzelle 0 oder leer)
Kanal-ID (channel-id)Kanal / Spindel innerhalb der Steuerung1
Kein Benutzer / Passwort

Open Protocol kennt kein Authentifizierungsverfahren. Sobald die IP erreichbar ist und die Steuerung „MID 0001 application start“ akzeptiert, beginnt die Kommunikation.


PLC-Adressnotation der Tags​

Die Daten von Open Protocol kommen einheitenweise als MID (Message ID) herein. Das Gateway stellt die Felder der am häufigsten verwendeten MIDs wie folgt aufgeschlüsselt bereit.

NotationBedeutung
MID:0061:torqueLetztes Verschraubungsergebnis — Drehmoment (Gleitkomma)
MID:0061:angleLetztes Verschraubungsergebnis — Winkel
MID:0061:statusErgebnisstatus (1 = OK, 0 = NOK)
MID:0061:psetIdVerwendete Pset-Nummer
MID:0061:vinVIN / Identifier (Zeichenkette)
MID:0061:resultDataGesamtes Raw-Payload (Zeichenkette)
MID:0071:alarmAlarm aufgetreten (Zeichenkette)
MID:0035:psetIdAktuell gewähltes Pset (Read)

Schreiben (Pset-Wechsel)​

NotationBedeutung
MID:0018:psetIdPset-Nummer schreiben und damit erzwingen (nur Write)

Für schreibfähige Notationen muss im Gateway unter [Tag-Registrierung] die Schreibberechtigung auf ON gesetzt werden.


Zuordnung der Datenformate​

MID-FeldDatenformatFormatzusatz
Messwerte wie Drehmoment / WinkelFloatREAL
Status / Pset-NummerInteger(leer)
VIN / AlarmmeldungStringSTR[N]
OK / NOKBoolean(leer)

Häufige Probleme und Lösungen​

Symptom / MeldungMögliche UrsacheLösung
Verbindung steht, aber keine WerteSubscribe auf MID 0060 / 0061 fehlgeschlagenPrüfen, ob die Firmware der Steuerung „Result data subscription“ unterstützt
Neue Verschraubung, aber Wert ändert sich nichtSteuerung im Zustand unsubscribeGateway neu starten → MID 0001 + 0060 werden automatisch erneut abonniert
„MID not supported“MID-Unterschiede je nach Firmware / ModellKompatibilitätstabelle im PDF „Atlas Copco Open Protocol Specification“ prüfen
Drehmomentwert um Faktor 100 / 1000 abweichendEinheit (Nm vs. cNm) stimmt nicht übereinEinheitenumrechnung über Formel anwenden

Häufig verwendete Beispiele​

Standard-Registrierungssatz für einen Kanal einer Verschraubungslinie.

Tag-NameAdresseDatenformatFormatzusatz
Letztes DrehmomentMID:0061:torqueFloatREAL
Letzter WinkelMID:0061:angleFloatREAL
OK/NOKMID:0061:statusBoolean(leer)
Pset-NummerMID:0061:psetIdInteger(leer)
VINMID:0061:vinStringSTR[25]
Bei MES-Anbindung

Verschraubungsergebnisse werden häufig nachverarbeitet oder in eine DB geschrieben. In Kombination mit Erfassungshistorie anzeigen und Erweitert — REST API lässt sich ein Push zum MES einfach realisieren.


Umfangreiche Ergebnisdatenfelder von MID 0061 (Last Tightening Result)​

Atlas-Copco-Steuerungen übermitteln in der Antwort auf MID 0061 die folgenden umfangreichen Felder. Das Gateway schlüsselt die häufig genutzten Felder vorab auf, es ist jedoch ebenso möglich, über resultData das Raw-Payload zu empfangen und selbst zu parsen.

FeldBedeutungDatenformat
cellIdZellennummerInteger
channelIdKanal- / SpindelnummerInteger
torqueControllerNameName der SteuerungString
vinVIN / Identifier (meist Karosserienummer)String
psetIdVerwendete Pset-NummerInteger
psetNamePset-Name (menschenlesbar)String
batchSizeGröße einer Charge (z. B. 4 Schrauben)Integer
batchCountAktueller Chargenzähler (n/batchSize)Integer
batchStatusCharge OK / NOK / laufendInteger (0/1/2)
torqueGemessenes Drehmoment (Nm)Float
torqueStatusDrehmoment OK / Low / HighInteger
angleGemessener Winkel (Grad)Float
angleStatusWinkel OK / Low / HighInteger
prevailingTorqueReibmoment (optional)Float
currentMonitoringErgebnis der StrommessungFloat
selfTapTorqueSelbstschneid-DrehmomentFloat
tighteningIdEindeutige ID der VerschraubungLong
timestampZeitpunkt der Verschraubung (ISO-8601)String
toolSerialSeriennummer des WerkzeugsString
operatorNameBediener-ID (sofern vorhanden)String
resultDataRaw-Text mit allen oben genannten FeldernString

Im Gateway unter [Tag-Registrierung] können Sie gezielt auswählen und registrieren, etwa MID:0061:torque, MID:0061:angle oder MID:0061:status.


Häufig verwendete Betriebsmuster​

Muster 1. Standard-Registrierungssatz für einen Linienkanal (Automobillinie)​

Tag-NameAdresseFormatBemerkung
Letztes DrehmomentMID:0061:torqueFloatEinheit standardmäßig Nm
Letzter WinkelMID:0061:angleFloatGrad
OK/NOKMID:0061:statusBooleanOK=true
Pset-NummerMID:0061:psetIdInteger
VINMID:0061:vinStringKarosserienummer
BearbeitungszeitpunktMID:0061:timestampStringISO-8601
Werkzeug-SeriennummerMID:0061:toolSerialStringZur Werkzeugverfolgung

Muster 2. OK/NOK auf Chargenebene (eine Karosserie = 6 Schrauben)​

Tag-NameAdresseFormat
ChargenzählerMID:0061:batchCountInteger
ChargenstatusMID:0061:batchStatusInteger

Der Moment, in dem batchStatus auf 1 (OK) wechselt, markiert die Fertigstellung einer Karosserie. Wird als Trigger für MES / Folgeprozess verwendet.

Muster 3. Pset-Wechsel erzwingen (write)​

MID:0018:psetId = 12

Bei Linienwechsel / Typenwechsel wird die Pset-Nummer vom Host aus fest vorgegeben. Üblicherweise übernimmt dies die PLC bzw. das MES, es ist aber auch über die [Tag-Schreibberechtigung] von PlantPulse möglich.

Muster 4. Alarmüberwachung​

Tag-NameAdresseFormat
AlarmtextMID:0071:alarmString

Die Steuerung sendet im Alarmfall einen Push. Nutzbar für Benachrichtigungen und Nachverarbeitung in PlantPulse.


Ausführlichere Beispiele / automatisierte Registrierung​

Siehe die Open-Protocol-Beispiele unter Erweitert — REST API.