캐드 엑셀 연동 실행 결과

캐드 엑셀 연동 — 도면 35장에 마크·수량을 손으로 적지 않는 법

캐드 엑셀 연동 — 지난 글에서 도면 35장을 한 번에 깔았습니다. 그런데 거기서 일이 끝나지 않았어요.

깔아놓고 보니 한 장씩 눈으로 훑어야 하는 상태 그대로였습니다.

정보가 없는 게 아니라, 흩어져 있습니다

캐드 엑셀 연동 전 도면에 흩어진 마크 규격 재질 수량

작업지시를 내리려면 도면마다 네 가지가 한자리에 붙어 있어야 합니다. 마크, 규격, 재질, 수량.

이 값들은 도면에 있습니다. 없어서 문제가 아니에요. 한 군데 모여 있지 않은 게 문제입니다.

마크는 형상 옆 타원에도 있고 하단 재료표에도 있고 도면번호에도 있습니다. 규격은 상단 치수 문자에 한 번, 하단 표에 또 한 번. 재질은 하단 표 한 칸에만. 수량은 더 복잡해서, 조립별로 쪼개진 표에 따로 있고 하단에 합계가 또 있습니다.

값이 없는 게 아니라 여러 군데 있고, 그중 어느 걸 써야 하는지는 사람이 판단해야 합니다. 수량만 해도 조립별 숫자를 쓸지 합계를 쓸지가 상황에 따라 다르거든요.

그래서 네 값을 모으려면 도면 한 장을 구석구석 눈으로 훑어야 합니다. 찾았으면 한자리에 옮겨 적고요. 35장이면 35번. 그리고 이 배치는 발주처마다, 같은 발주처여도 도면 종류마다 달라집니다.

그럼 엑셀을 보면 되지 않냐면

캐드 엑셀 연동에 쓰는 BOM 표 예시

엑셀(BOM)에는 네 값이 한 줄에 가지런히 있습니다. 그래서 다들 이쪽으로 갑니다. 화면을 반으로 갈라 한쪽에 캐드, 한쪽에 엑셀을 띄워놓고 번갈아 봐요.

해보시면 압니다. 눈이 아픕니다.

작은 글씨의 표에서 한 줄을 붙들고 시선을 캐드로 옮겼다가 다시 돌아오면, 보고 있던 줄이 어디였는지 매번 다시 찾아야 합니다. 그걸 35번 반복하면 오후가 통째로 날아가고, 하고 나면 눈이 뻑뻑해요.

도면을 훑든 엑셀을 훑든, 결국 사람 눈이 두 자료를 왕복한다는 건 똑같습니다.

손으로 옮기면 생기는 일

35장이면 140개 값을 옮겨 적습니다. 시간도 시간인데, 진짜 문제는 따로 있어요.

한 줄 밀려 읽으면 그대로 절단으로 갑니다.

엑셀에서 눈이 한 칸 내려가면 옆 품목의 수량을 적게 됩니다. 도면에는 멀쩡한 숫자가 적혀 있고, 작업자는 적힌 대로 자릅니다. 레이저는 의심하지 않아요.

틀린 항목결과
수량모자라면 재단, 남으면 자재 낭비
재질전량 폐기. 모양이 같아서 자르기 전엔 구분이 안 됨
규격조립 단계에서 발견 — 가장 늦게, 가장 비싸게

철판은 되돌릴 수 없습니다. 자르고 나면 그 자재는 끝이에요.

캐드 엑셀 연동이 안 되는 진짜 이유 — 열쇠가 없습니다

“엑셀 읽어서 캐드에 쓰면 되는 거 아니냐”고 하면, 읽고 쓰는 건 어렵지 않습니다. 엑셀은 openpyxl 같은 라이브러리로 읽고 캐드 쪽은 리습으로 쓰면 되니까, 코드만 보면 몇 줄짜리예요.

막히는 건 어느 엑셀 행이 어느 도면 것인지를 어떻게 아느냐입니다. 둘을 잇는 공통 열쇠가 있어야 하는데, 그게 없습니다.

도면 안의 글자로는 안 됩니다. 앞에서 쓴 그 문제가 여기서 그대로 걸려요. 마크명이 도면 어딘가에 적혀 있긴 한데, 발주처마다 위치가 다르고 레이어가 다르고 글자 크기가 다릅니다. 어떤 건 치수 문자와 섞여 있고요.

사람 눈으로는 “아, 이게 마크구나” 하고 알아보지만, 기계에게 그 규칙을 설명할 수가 없습니다. 긁어서 판정하게 하면 틀립니다.

반면 파일명은 믿을 수 있습니다. 발주처가 부재 하나당 파일 하나로 쪼개 보내고, 그 파일명이 곧 마크예요. PL-001.dwg 같은 식으로요. 사람이 눈으로 쓰는 것도 결국 이 파일명입니다.

문제는 블록으로 삽입하는 순간 파일명이 사라진다는 겁니다. 작업도면에 들어온 뒤에는 그게 어느 파일에서 왔는지 알 길이 없어요.

그래서 지난 글의 배치 툴이 도면 위에 원본 파일의 전체 경로를 문자로 남깁니다. 그때는 “나중에 추적하려고”라고만 썼는데, 사실 이걸 쓰려고 남긴 거였어요. 그 문자가 캐드 엑셀 연동의 열쇠입니다.

캐드 엑셀 연동, 돌아가는 순서

1. 작업도면 안의 경로 문자를 전부 수집
2. 경로에서 파일명을 떼어내 마크로 변환
3. BOM 엑셀에서 그 마크의 행을 조회
4. 해당 도면 발밑에 마크·규격·재질·수량을 기입

기입 위치는 삽입된 블록의 경계상자를 기준으로 잡습니다. 도면마다 원점이 제각각이라 좌표를 믿을 수 없거든요.

사람이 하면 30분 걸리던 게 몇 초에 끝납니다. 더 중요한 건 옮겨 적는 구간에서 사람이 빠진다는 거예요.

캐드 엑셀 연동 실행 결과
캐드 엑셀 연동 실행 결과

자동으로 기입된 실제 화면입니다. 위에는 주황색 글씨로 요약 한 줄, 도면 안에는 항목별로 한 번 더 적힙니다.

캐드 엑셀 연동을 걸어두면, 사람이 하면 30분 걸리던 게 몇 초에 끝납니다.

지뢰 — 전부 직접 밟은 것만

① “경로 텍스트 0개 발견”

첫 실행에서 아무것도 못 찾았습니다. 도면에는 분명히 경로가 적혀 있는데요.

받는 쪽이 경로를 판정할 때 /가 있는지만 보고 있었습니다. 그런데 사내 서버 경로(\\서버\...)에는 역슬래시밖에 없어요. 남긴 쪽은 잘 남겼고 읽는 쪽이 못 알아본 겁니다.

데이터를 넘길 때는 넘기는 쪽 형식과 받는 쪽 기대가 같은지 실제 데이터로 확인해야 합니다. 둘 다 제가 만든 건데도 이랬어요.

② 레이어를 좁혀놨더니 못 찾았습니다

경로 문자를 특정 레이어에서만 찾도록 해뒀습니다. 빠르니까요.

그런데 삽입 과정에서 레이어가 그대로 유지되지 않는 경우가 있었습니다. 레이어 이름이 바뀌거나, 블록 안으로 들어가면서 소속이 달라져요.

조건을 풀고 내용으로 판정하도록 바꿨습니다. 레이어가 뭐든 “경로처럼 생긴 문자”면 집습니다. 조금 느려지지만, 못 찾는 것보다 낫습니다.

③ 기입 위치가 엉뚱한 데 찍혔습니다

처음엔 도면 원점을 기준으로 아래쪽에 적게 했습니다. 그랬더니 어떤 도면은 형상 한참 아래, 어떤 도면은 형상 위에 겹쳐서 찍혔어요.

도면마다 도곽 크기도 원점 위치도 제각각이라 그렇습니다. 삽입된 블록의 경계상자를 재서 그 아래에 붙이도록 바꾸니 전부 제자리에 들어갔습니다.

④ 마크명으로 물건을 판정하면 틀립니다

이게 제일 뼈아팠습니다.

부재 종류를 판정할 때 마크명을 봤어요. 그런데 마크명은 발주처가 붙인 이름이라 물건의 성질과 무관합니다. 마크에 L이 들어갔다고 ㄱ형강이 아니고, 플레이트인데 이름만 그렇게 생긴 경우가 있습니다.

판정은 규격 표기로 해야 합니다. 규격은 접두에 따라 토막 수가 정해져 있어요 — 플레이트는 두 토막, ㄱ자 절곡재는 세 토막, H형강은 네 토막. 이름이 아니라 이 구조를 봐야 틀리지 않습니다.

사람도 똑같이 틀리는 지점입니다. 마크명만 보고 “이건 앵글이네” 하고 넘어가는 실수요.

⑤ “0개 발견”만 뜨고 끝나는 게 제일 나쁩니다

①번을 찾는 데 오래 걸린 이유가 이겁니다. 화면에는 0개 발견만 떴어요. 몇 개를 읽었는지, 읽고 나서 왜 버렸는지가 아무 데도 안 남았습니다.

지금은 몇 개를 집었고, 몇 개가 어떤 이유로 탈락했는지를 전부 찍습니다. 성공했을 때 조용한 건 괜찮은데, 실패했을 때 조용하면 고칠 수가 없어요.

자동화의 완성도는 잘 돌 때가 아니라 안 돌 때 드러납니다.

아직 못 푼 것

캐드 엑셀 연동은 BOM 엑셀의 양식이 바뀌면 깨집니다.

발주처마다 열 순서와 머리글이 달라서, 지금은 양식별로 읽는 규칙을 따로 두고 있어요. 새 거래처가 생기면 규칙을 하나 더 넣어야 합니다. 열 이름을 유연하게 찾는 쪽으로 바꾸는 걸 검토 중입니다.

한 마크가 여러 도면에 나오면 기입이 중복됩니다. 조립도와 단품도에 같은 마크가 있을 때요. 지금은 사람이 보고 지웁니다.

이 글에서 가져갈 것

  • 값이 없어서 힘든 게 아니라 흩어져 있어서 힘든 겁니다 — 자동화의 목표는 “만들기”가 아니라 “한자리에 모으기”
  • 캐드 엑셀 연동의 어려움은 엑셀을 읽는 게 아니라 도면과 행을 잇는 열쇠를 정하는 것
  • 도면 안의 글자는 못 믿고 파일명은 믿을 수 있습니다 — 삽입한 뒤에도 그 파일명을 살려두는 게 핵심
  • 사람이 옮겨 적는 구간의 진짜 비용은 시간이 아니라 틀린 값이 그대로 절단으로 간다는 것
  • 부재 판정은 이름이 아니라 규격 구조로 — 사람도 여기서 틀립니다
  • 실패를 설명하지 못하는 자동화는 결국 안 쓰게 됩니다. 진단 출력은 기능입니다

다음 글 예고

도면에서 잠깐 나옵니다. 현장용 모바일 앱을 만든 이야기예요.

협업툴에 공정 보드를 만들어놨는데, 정작 현장 사람들은 하루 종일 기계 옆에 있어서 아무도 안 봤습니다. 폰에서 카드를 옮길 수 있게 만들기까지 — 권한 설계와 링크 하나 때문에 세 번 막힌 기록을 씁니다.


비슷한 작업 때문에 시간을 뺏기고 계신가요

발주서 정리, BOM 작성, 송장 발행처럼 매번 반복되는 사무 작업이라면 자동화할 수 있습니다.

어떤 작업을 몇 번 반복하시는지만 알려주세요.


판금하는 탄즈 — 레이저 절단·절곡 9년차. 반복 작업이 싫어서 AI와 자동화로 도망치는 중.

Similar Posts