Atlas Copco Open Protocol (체결)
Open Protocol 은 스웨덴의 Atlas Copco 가 1990년대 후반에 공개한 체결 (tightening) 컨트롤러 표준 규약입니다. 자동차 / 항공 / 백색가전 조립 라인의 토크 렌치 / 너트러너 / 파워 툴이 거의 다 이 규약을 씁니다.
대표 컨트롤러: Power Focus 4000 / 6000 / 8 / Tools Net / FlexController.
이 게이트웨이의 OP 드라이버는 체결 결과 (last result) 수집 + Pset 변경 에 초점이 맞춰져 있습니다.
등록 폼 입력값
| 입력 칸 | 무엇을 적나요 | 예시 |
|---|---|---|
| IP 주소 | 컨트롤러 IP | 192.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:vin | VIN / Identifier (문자열) |
MID:0061:resultData | 전체 raw payload (문자열) |
MID:0071:alarm | 알람 발생 (문자열) |
MID:0035:psetId | 현재 선택된 Pset (Read) |
쓰기 (Pset 변경)
| 표기 | 의미 |
|---|---|
MID:0018:psetId | Pset 번호를 적어 강제 선택 (Write 전용) |
쓰기 가능 표기는 게이트웨이의 [태그 등록] → 쓰기 권한 ON 으로 설정하셔야 합니다.
데이터 형식 매칭
| MID 필드 | 데이터 형식 | 형식 보조 |
|---|---|---|
| 토크 / 각도 등 측정값 | Float | REAL |
| 상태 / Pset 번호 | Integer | (비움) |
| VIN / 알람 메시지 | String | STR[N] |
| OK / NOK | Boolean | (비움) |
흔한 문제와 해결
| 증상 / 메시지 | 가능한 원인 | 해결 |
|---|---|---|
| 연결만 되고 값이 안 옴 | 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) 불일치 | 계산식 적용 으로 단위 변환 |
자주 쓰는 예시
체결 라인 한 채널의 표준 등록 세트입니다.
| 태그 이름 | 주소 | 데이터 형식 | 형식 보조 |
|---|---|---|---|
| 마지막 토크 | MID:0061:torque | Float | REAL |
| 마지막 각도 | MID:0061:angle | Float | REAL |
| OK/NOK | MID:0061:status | Boolean | (비움) |
| Pset 번호 | MID:0061:psetId | Integer | (비움) |
| VIN | MID:0061:vin | String | STR[25] |
체결 결과는 후처리 / DB 적재가 흔합니다. 수집 이력 보기 와 고급 — REST API 를 함께 활용하시면 MES 쪽으로 push 가 쉽습니다.
MID 0061 (Last Tightening Result) 의 풍부한 결과 데이터 필드
Atlas Copco 컨트롤러는 MID 0061 응답에 다음과 같은 풍부한 필드를 담아 보냅니다. 게이트웨이는 자주 쓰는 필드를 미리 풀어 노출하지만, resultData 로 raw payload 를 받아 직접 파싱하는 것도 가능합니다.
| 필드 | 의미 | 데이터 형식 |
|---|---|---|
cellId | 셀 번호 | Integer |
channelId | 채널 / 스핀들 번호 | Integer |
torqueControllerName | 컨트롤러 이름 | String |
vin | VIN / Identifier (보통 차체 번호) | String |
psetId | 사용된 Pset 번호 | Integer |
psetName | Pset 이름 (사람이 읽는) | String |
batchSize | 한 배치 크기 (예: 4 볼트) | Integer |
batchCount | 현재 배치 카운터 (n/batchSize) | Integer |
batchStatus | 배치 OK / NOK / 진행중 | Integer (0/1/2) |
torque | 측정 토크 (Nm) | Float |
torqueStatus | 토크 OK / Low / High | Integer |
angle | 측정 각도 (도) | Float |
angleStatus | 각도 OK / Low / High | Integer |
prevailingTorque | 마찰 토크 (선택) | Float |
currentMonitoring | 전류 모니터링 결과 | Float |
selfTapTorque | 셀프 탭 토크 | Float |
tighteningId | 체결 고유 ID | Long |
timestamp | 체결 시각 (ISO-8601) | String |
toolSerial | 공구 시리얼 번호 | String |
operatorName | 작업자 ID (있는 경우) | String |
resultData | 위 모든 필드를 포함한 raw 텍스트 | String |
게이트웨이의 [태그 등록] 에서 MID:0061:torque, MID:0061:angle, MID:0061:status 처럼 골라서 등록하시면 됩니다.
자주 쓰는 운영 패턴
패턴 1. 라인 한 채널의 표준 등록 세트 (자동차 라인)
| 태그 이름 | 주소 | 형식 | 비고 |
|---|---|---|---|
| 마지막 토크 | MID:0061:torque | Float | 단위 Nm 기본 |
| 마지막 각도 | MID:0061:angle | Float | 도 |
| OK/NOK | MID:0061:status | Boolean | OK=true |
| Pset 번호 | MID:0061:psetId | Integer | |
| VIN | MID:0061:vin | String | 차체 번호 |
| 작업 시각 | MID:0061:timestamp | String | ISO-8601 |
| 공구 시리얼 | MID:0061:toolSerial | String | 공구 추적용 |
패턴 2. 배치 (한 차체 = 6 볼트) 단위 OK/NOK
| 태그 이름 | 주소 | 형식 |
|---|---|---|
| 배치 카운터 | MID:0061:batchCount | Integer |
| 배치 상태 | MID:0061:batchStatus | Integer |
batchStatus 가 1 (OK) 가 되는 순간이 한 차체 완료 시점. MES / 후공정 trigger 로 사용.
패턴 3. Pset 강제 변경 (write)
MID:0018:psetId = 12
라인 변경 / 차종 전환 시 Pset 번호를 host 에서 강제 지정. 일반적으로는 PLC / MES 가 처리하지만, PlantPulse 의 [태그 쓰기 권한] 으로도 가능.
패턴 4. 알람 모니터링
| 태그 이름 | 주소 | 형식 |
|---|---|---|
| 알람 텍스트 | MID:0071:alarm | String |
알람 발생 시점에 컨트롤러가 push. PlantPulse 의 알림 / 후처리에 활용.
더 자세한 예제 / 자동화 등록
고급 — REST API 의 Open Protocol 예제를 참고하세요.