メインコンテンツまでスキップ

Atlas Copco Open Protocol (締付)

Open Protocol は、スウェーデンの Atlas Copco が1990年代後半に公開した締付 (tightening) コントローラ標準規約です。自動車 / 航空 / 白物家電の組立ラインで使われるトルクレンチ / ナットランナー / パワーツールのほぼすべてがこの規約を採用しています。

代表的なコントローラ: Power Focus 4000 / 6000 / 8 / Tools Net / FlexController

このゲートウェイのOPドライバは、締付結果 (last result) の収集 + Pset 変更 に重点を置いています。


登録フォームの入力値

入力欄何を入力するか
IPアドレスコントローラのIP192.168.0.100
ポートOpen Protocol ポート4545 (標準)
セルID (cell-id)複数セル環境でのセル番号1 (単一セルなら 0 または空欄)
チャネルID (channel-id)コントローラ内のチャネル / スピンドル1
ユーザー / パスワードなし

Open Protocol には認証手順がありません。IPが到達し、コントローラが「MID 0001 application start」を受け付ければ通信が開始されます。


タグのPLCアドレス表記

Open Protocol のデータは MID (Message ID) 単位で入ってきます。ゲートウェイは最も頻繁に使われるMIDのフィールドを、次のように展開して公開します。

表記意味
MID:0061:torque最後の締付結果 — トルク (実数)
MID:0061:angle最後の締付結果 — 角度
MID:0061:status結果ステータス (1 = OK、0 = NOK)
MID:0061:psetId使用されたPset番号
MID:0061:vinVIN / Identifier (文字列)
MID:0061:resultDataraw payload 全体 (文字列)
MID:0071:alarmアラーム発生 (文字列)
MID:0035:psetId現在選択されているPset (Read)

書き込み (Pset 変更)

表記意味
MID:0018:psetIdPset番号を書き込んで強制選択 (Write専用)

書き込み可能な表記は、ゲートウェイの [タグ登録] → 書き込み権限 ON に設定する必要があります。


データ形式のマッチング

MIDフィールドデータ形式形式補助
トルク / 角度などの測定値FloatREAL
ステータス / Pset番号Integer(空欄)
VIN / アラームメッセージStringSTR[N]
OK / NOKBoolean(空欄)

よくある問題と対処

症状 / メッセージ考えられる原因対処
接続はできるが値が来ないMID 0060 / 0061 の subscribe 失敗コントローラが「Result data subscription」に対応したファームウェアか確認
新しい締付なのに値が変わらないコントローラが unsubscribe 状態ゲートウェイ再起動 → MID 0001 + 0060 で自動再購読
「MID not supported」ファームウェア / モデルによるMIDの差異Atlas Copco Open Protocol Specification PDF の互換表を確認
トルク値が100倍 / 1000倍ずれるunit (Nm vs cNm) の不一致計算式の適用 で単位変換

よく使う例

締付ラインの1チャネルに対する標準登録セットです。

タグ名アドレスデータ形式形式補助
最後のトルクMID:0061:torqueFloatREAL
最後の角度MID:0061:angleFloatREAL
OK/NOKMID:0061:statusBoolean(空欄)
Pset番号MID:0061:psetIdInteger(空欄)
VINMID:0061:vinStringSTR[25]
MES連携時

締付結果は後処理 / DB格納が一般的です。収集履歴の表示高度 — REST API を併用すると、MES側へのpushが容易になります。


MID 0061 (Last Tightening Result) の豊富な結果データフィールド

Atlas Copco コントローラは、MID 0061 の応答に次のような豊富なフィールドを含めて送信します。ゲートウェイはよく使うフィールドをあらかじめ展開して公開しますが、resultData で raw payload を受け取り、直接パースすることも可能です。

フィールド意味データ形式
cellIdセル番号Integer
channelIdチャネル / スピンドル番号Integer
torqueControllerNameコントローラ名String
vinVIN / Identifier (通常は車体番号)String
psetId使用されたPset番号Integer
psetNamePset名 (人が読む用)String
batchSize1バッチのサイズ (例: 4ボルト)Integer
batchCount現在のバッチカウンタ (n/batchSize)Integer
batchStatusバッチ OK / NOK / 進行中Integer (0/1/2)
torque測定トルク (Nm)Float
torqueStatusトルク OK / Low / HighInteger
angle測定角度 (度)Float
angleStatus角度 OK / Low / HighInteger
prevailingTorque摩擦トルク (オプション)Float
currentMonitoring電流モニタリング結果Float
selfTapTorqueセルフタップトルクFloat
tighteningId締付固有IDLong
timestamp締付時刻 (ISO-8601)String
toolSerial工具シリアル番号String
operatorName作業者ID (ある場合)String
resultData上記すべてのフィールドを含む raw テキストString

ゲートウェイの [タグ登録] で MID:0061:torqueMID:0061:angleMID:0061:status のように選んで登録してください。


よく使う運用パターン

パターン1. ライン1チャネルの標準登録セット (自動車ライン)

タグ名アドレス形式備考
最後のトルクMID:0061:torqueFloat単位はNmが既定
最後の角度MID:0061:angleFloat
OK/NOKMID:0061:statusBooleanOK=true
Pset番号MID:0061:psetIdInteger
VINMID:0061:vinString車体番号
作業時刻MID:0061:timestampStringISO-8601
工具シリアルMID:0061:toolSerialString工具トレース用

パターン2. バッチ (1車体 = 6ボルト) 単位のOK/NOK

タグ名アドレス形式
バッチカウンタMID:0061:batchCountInteger
バッチ状態MID:0061:batchStatusInteger

batchStatus が 1 (OK) になる瞬間が1車体の完了時点です。MES / 後工程のトリガとして使用します。

パターン3. Pset の強制変更 (write)

MID:0018:psetId = 12

ライン変更 / 車種切替時に、Pset番号をhost側から強制指定します。通常はPLC / MESが処理しますが、PlantPulse の [タグ書き込み権限] でも可能です。

パターン4. アラーム監視

タグ名アドレス形式
アラームテキストMID:0071:alarmString

アラーム発生時点でコントローラがpushします。PlantPulse の通知 / 後処理に活用できます。


さらに詳しい例 / 自動登録

高度 — REST API の Open Protocol の例を参照してください。