예천…겐트리의 추억

겐트리 트래킹 모니터링 화면

작성자

카테고리:

경북 예천의 음료 공장에 겐트리 로봇 두 대를 세웠다. 흐르는 컨베이어 위의 박스를 멈추지 않고 집어 파렛트에 쌓는 설비다. 2021년 1월에 시작해 그해 12월에 넘겼고, 5년이 지난 지금도 가끔 나를 부른다.

흐르는 것을 집는다

겐트리 로봇의 일 자체는 단순하다. 집어서 옮겨 놓는다. 어려운 것은 대상이 서 있지 않다는 점이다.

컨베이어는 초당 320 mm 로 계속 흐른다. 센서가 박스를 감지한 순간부터 로봇이 그 자리에 도달할 때까지, 박스는 이미 저만치 가 있다. 그래서 로봇은 지금 위치가 아니라 집을 시점의 위치로 가야 한다. 이것이 컨베이어 트래킹이다.

<표 1> 현장 치수

항목값
컨베이어 길이4,560 mm
감지 센서 → 로봇 11,200 mm
감지 센서 → 로봇 23,400 mm
컨베이어 속도320 mm/s (뒤에 310 으로 낮춤)

로봇 두 대가 한 줄을 나눠 맡는다. 홀수 번째 박스는 1번이, 짝수 번째는 2번이 집는다. 두 대가 각자 자기 몫만 정확히 세고 있어야 하며, 한 번이라도 어긋나면 그 뒤가 전부 밀린다.

트래킹 모니터링 화면
<그림 1> 트래킹 모니터링. 왼쪽 큐가 컨베이어 위 박스이고, 로봇별 집은 좌표와 놓은 좌표가 실시간으로 찍힌다

세 대의 제어기

제어가 한 곳에 모여 있지 않았다. 세 대가 물려 있었다.

  • 미쓰비시 PLC — 라인 전체의 시퀀스
  • 베이어 HMI — 작업자가 보는 터치 화면
  • Lenze 3200 — 겐트리 두 대의 모션

박스의 품번·길이·폭·적재 패턴은 HMI 에서 입력되어 미쓰비시를 거쳐 Lenze 로 내려온다. 모션 제어기 입장에서는 남을 거쳐 오는 정보인 셈이다.

적재 패턴 입력 화면
<그림 2> 품번·길이·폭과 홀짝별 적재 좌표

여기서 문제가 났다. Lenze 가 리셋되고 나면, 미쓰비시를 통해 오는 값이 갱신되지 않았다. 두 제어기가 직접 주고받는 데이터는 멀쩡한데 한 다리 건넌 값만 굳어 버렸다. 모션 쪽에서는 그것이 낡은 값인지 알 방법이 없었다. 길이와 폭이 0 이면 알람이라도 낼 수 있지만, 그럴듯한 값으로 굳어 있으면 방법이 없었다.

도는 축에는 리밋이 걸리지 않는다

현장 셋업에서 소프트리밋이 회전축과 그리퍼축에만 먹지 않았다. X·Y·Z 는 정상이었다. 원인은 축 타입이었다. 두 축이 모듈러로 설정되어 있었는데, 끝없이 도는 축으로 보면 상한과 하한이라는 개념 자체가 성립하지 않는다. 리미티드로 바꾸고 나서야 리밋이 걸렸다.

회전축은 기구 원점을 180도에 두고 −10도에서 91도까지만 움직이도록 묶었다. 사람이 눈으로 확인할 수 없는 축일수록 소프트웨어가 대신 막아 줘야 한다.

2,000 박스

2021년 11월 22일, 양산 조건으로 2,000 박스를 흘렸다. 1,800 개가 정상 배출되고 200 개가 문제였다. 불량률 10 %.

원인을 갈라 보니 이랬다.

원인비중
통신 지연80 %
투입 물류 문제15 %
센서 오감지 · 미파악5 %

박스가 들어오고 2초 안에 통신이 갱신되지 않으면 몇 번 패턴인지 알 수 없었다. 공장장과 협의해 그날 생산을 멈췄다.

결론은 소프트웨어가 아니었다. 입력 배선 11개를 새로 깔았다. 남을 거쳐 오던 신호를 모션 제어기가 직접 받도록 바꾼 것이다. 통신 프로토콜을 아무리 다듬어도 세 다리를 건너는 구조 자체는 바뀌지 않는다. 그럴 때는 선을 하나 더 까는 편이 빠르다.

생산 중에는 건드리지 않는다

다음 날 5,800 개를 흘렸고 7번 놓쳤다. 그중 몇 번은 내가 사이클 타임 측정 프로그램을 내려받는 중에 일어났다. 그날 수첩에 이렇게 적었다.

생산 중에는 왠만하면 프로그램 수정 하기 없기.

당연한 말인데, 라인이 돌고 있으면 한 줄만 고치면 될 것 같다는 생각이 계속 든다. 그 유혹이 사고를 만든다.

텍타임

처음엔 분당 24 박스였다. 그리퍼 제어 로직을 손보면 1회당 0.3~0.5초를 줄일 수 있다고 봤다. 투입 타이머를 박스 위치별로 분리하고, 그리퍼를 로봇이 출발하면서 함께 움직이도록 바꿨다.

그리퍼 개폐 도면
<그림 3> 그리퍼 개폐 스트로크. 제품 폭에 따라 벌어지는 정도가 달라진다

분당 26 박스까지 올라갔다. 목표는 32 였다. 다만 속도를 올리자 로봇 2번에 소프트리밋 알람이 떴고, 컨베이어를 310 mm/s 로 낮췄다. 가장 빠른 설정과 가장 안정된 설정은 같지 않았다. 결국 25~26 박스 언저리에서 타협했다. 그 속도가 밤새 돌려도 알람이 없는 속도였다.

진동과 소음은 클러치 파라미터로 잡았다. 축이 트래킹에 물리는 구간을 짧게 (ClutchDistance = 60, ClutchTime = 0) 두니 붙는 순간의 충격이 줄었다.

5년 뒤

2021년 12월 10일에 오퍼레이터 교육을 하고 현장에서 빠졌다. 이듬해 1월에 바이패스 모드를 넣어 주고 그걸로 끝인 줄 알았다.

2026년 8월, X축에 팔로잉 에러가 나기 시작했다는 연락을 받았다. 축을 교체하려면 10주가 걸린다고 했다. 그때까지 라인을 세울 수는 없으니 임시 조치를 하러 다시 예천에 갔다.

팔로잉 에러 설정
<그림 4> 추종 오차 감시 설정

허용 오차를 200 에서 500 으로, 판정 시간을 1,000 에서 3,000 ms 로 늘렸다. 오차 한계보다 시간을 먼저 늘리는 편이 안전하다. 순간적인 기구 마찰은 지나가게 두고, 진짜 고착이나 충돌 같은 지속성 이상은 그대로 잡아내기 때문이다. 한계값만 키우면 두 경우를 구분하지 못하게 된다.

설비는 넘긴다고 끝나지 않는다. 기구는 닳고, 오차는 커지고, 5년 전에 임시로 박아 둔 한 줄이 어느 날 발목을 잡는다. 그때 그 코드를 쓴 사람이 나라는 것도 로그를 뒤지다 알게 된다.

그래도 예천의 그 라인은 아직 돌고 있다. 박스는 여전히 초당 320 mm 로 흐르고, 두 대가 홀수와 짝수를 나눠 집는다.

가끔은 그것으로 충분하다.

코멘트

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

어제 방문자 : 3 명오늘 방문자 : 1 명전체 방문자 : 584 명