2011년 5월 17일 화요일

CATIA에서 프로덕트 구조관리2

CATIA Assembly 구조에서 트리의 가장상위에 나타나는것이
자기자신의 문서에 대한 파트넘버가 나타납니다.
조립품에 해당하더라도 명칭은 파트넘버라고 부릅니다.

그 아래에 Level 별로 프로덕트가 있을 수도 있고 파트가 있을 수도 있습니다.











위 그림에서 "Product1"이 소위 "루트 프로덕트" 라고 하고 현재 조작하고 있는 문서의 Part No. 입니다.

별도로 이름을 변경하지 않았기에 Product1 이라고 되어 있지요.
하지만  실제 업무에서는 BOM을 기준으로 제작을 하는것이기  때문에 반드시 PartNo.를 부여해야만 합니다.

그 아래 쪽에 나타나는 것이 Product2 , Product3. Part1입니다.  그런데  루트 프로덕트와 다르게 우측에 괄호로 이름이 하나 더 붙어 있네요. 
이것을 인스턴스명 ( Instance Name )이라고 합니다. 기억해 두세요.






여러분들은 상기 ICON 을 이용하여 가상의 SUB 조립품을 추가할 수 있습니다.
왼쪽이 컴포넌트 추가기능 , 오른쪽이 프로덕트 추가 기능인데
사실 컴포넌트와 프로덕트는  물리적으로는 똑같은 개념입니다. 

단지 컴포넌트는 스스로의 파일을 가지고 있지 않을 뿐입니다.
따라서 아이콘 그림에 기어모양 뒤에 종이가 그려있지 않습니다.
프로덕트에 대한 정보는 상위문서가 저장하고 보관하고 있습니다. (즉 그림에서는 Product1의 문서가 Product3 이하 Sub Assembly의 내용을 저장합니다.)
반면에 Product2이하 Sub Assembly에 대한 정보는 Product2문서가 스스로 저장 보관하게 됩니다.







상기 ICON으로는 새로운 "파트"를 프로덕트 밑에다 추가 할수 있습니다.
제일 윗그림의 3번째로 붙어 있는 Part1(Part1.1) 은  이 기능으로 붙인 것입니다.

그럼 인스턴스명은 무슨 목적으로 붙어 있을까요?
실 제품에서는 여러가지 부품이 모여있기는 한데 같은 부품이 여러 개 사용될 수가 있습니다.
제조 관리상 반드시 똑같은 부품은 똑같은 Part No.를 가져야 합니다. ( 이건 모든 제조 회사의 절대 원칙입니다. 똑같이 생긴 부품이라도 색상이나, 재질이 다를 경우 이는 다른 부품으로 취급합니다. 이럴 경우 Part No. 도 달라야 합니다. )

BOM List에서는 여러개 반복되는 Part나 Assembly는  한 개의 Part No.와 수량을 함께 명기함으로써 명확히 정의할 수 있습니다. 

하지만 형상을 중요시하는 CAD 시스템에서는 똑같은 부품을 사용하더라도  각각의 위치가 절대로 같은 곳에 존재 할 수가 없습니다.

예를 들어 같은 육각머리 볼트가 같은 조립Level에서 여러개 사용 될 경우 설계자는 후속 사용자(생산기술부,구매부,AS부서)를 위해 볼트가 배치되어 있는 위치를 도면상(CAD에서는 공간상)에서 명확히 표현 해주어야만 합니다.
 따라서 같은 파트넘버를 가진 부품들끼리도  구분해주어야 할 이름표를 반드시 붙여야 하구요  이걸 ID형태로 보관합니다. 이를  "인스턴스명" 이라고 합니다.

루트 프로덕트를 포함하여 1개의 부분품 하에 있는  부품( 조립품을 포함해서 )의 인스턴스명은  절대 같으면 안됩니다. 

인스턴스명의 이름은  사용자 마음대로 명명해도 상관없으나.  
보통   PartNumber.1   PartNumber.2 등    " . "  과 숫자들을 Part Number뒤에 붙여서  이름이 자동 명명됩니다. ( 이건 CATIA가 자동으로 명명하는 방법입니다.)

그리고 각 인스턴스 별로 ( 같은 파트넘버에 관계없이 1개의 프로덕트 내의 모든 부분품 전부) 자기 상위 프로덕트의 기준으로  위치 매트릭스 정보를 한개씩 보유하고 있습니다.

위치매트릭스 정보란 프로덕트내에서  각 SUB부품의 원점좌표와 놓여 있는 방향을 Matrix(행렬)의 형태로 정의한 정보를 의미합니다.  ( 이건 CATIA용어는 아닙니다.)
3 x 4 행렬로 표현하는데 3x3은 직각좌표계의 방향성 3 x 1은 부품의 원점 x,y,z의 좌표를 표시합니다.

사실 이 값은 프로그래머는 확인 할수 있으나 일반 사용자는 굳이 알 필요도 없고 (안다고 해서 모델링에 사용되지는 않습니다.) CATIA의 일반적인 기능에서 확인 할 수도 없습니다.

모델링할 때는 내가 모델링하는 물체의 형상과 위치가 중요한 것이지 그 물체를 저장하는 Part의 원점 좌표위치가 중요하진 않으니까요.

[PS: 실제 CATIA에서 사용자들은 위치매트릭스 정보를 한 개이상 저장할 수 있으며, 여러분들은 여러가지 조립상태를  보관하며 관리할 수 있는 SCENE이란 기능을 사용하실 수 있습니다. 이 내용은  이후에 언급하겠습니다.]

각 Sub 어셈블리나 파트의 위치정보는 바로 상위의 프로덕트가 해당 정보를 저장하게 되며 차상위 프로덕트는 해당부품에 대한 정보를 저장하지 않습니다. (아니 저장할 필요도 없습니다.)

그럼 루트 프로덕트에서 프로덕트를 한개 붙이고 다시 파트 2개를 하위프로덕트에 붙이는 시나리오를 진행해 보면서 설명 하겠습니다.














먼저 프로덕트문서를 새로 엽니다. CATIA를 새로 구동할 때 자동으로 생성되니 여러분들은
위와 같이 생긴 트리를 자주 보셨을 겁니다.

왼쪽 그림에 ROOT_PRODUCT  ( 여기서  Product1을 ROOT_PRODUCT라고 여겨주세요 )
에 대한 좌표가 있습니다.   사용자는  CATIA 화면만  봐서는 좌표축과 원점이 어디있는지 알수가 없습니다.  하지만  화면 우하단에 보이는 축 또는   화면 우상단의 컴퍼스형상으로 방향은 추정이 가능합니다.













이제 여러분은 ROOT_PRODUCT 밑에 PRODUCT2라는 부분품을 삽입하였습니다.
물론 PRODUCT2의 원점좌표는 새로 생기는 순간 ROOT_PRODUCT와 겹칠 것입니다.

여기까지도 여러분들은 CATIA화면의 Geometrical  영역에서 아무것도 발견할 수 없습니다.

심지어 PRODUCT2의 위치를 변경하는것 조차 허락되지 않습니다.
형상이 보여야 뭘 옮기고 말고 하죠...

( 하지만 API를 다룰 줄 아는 프로그래머는  VBA를 가지고 좌표위치를 변경할 수 있답니다.)

PRODUCT2 밑에 PART1과 PART2를 새로 추가 했습니다.

여러분은 비로소 PRODUCT2를 옮길 수가 있습니다. Graphic상에 보이는게 생겼으니까요.

이제  Move 기능이나  컴파스를 이용해  PRODUCT2 조립품의 위치를 이동할 수가 있습니다.

바로 위 그림에서는 제 마음대로 옮겨 봤습니다.

(여기서는 ROOT_PRODUCT의 정위치를 알수 없으므로 상기그림 만으로는 확인이 조금  힘듭니다 .... 화면을 돌린것인지 물체를 돌린것인지)

Product2 아래의 Part1과 Part2를 별도로 옮기기 위해서는   활성화 위치를 변경해야 합니다.


사용자들은  PRODUCT2를 더블클릭함으로써  활성화 위치를 바꿀수 있습니다.

그리고  아래 PART1과 PART2의 위치를 별도로 옮길 수가 있게 됩니다.



역시 여러분들은  ROOT_PRODUCT의 원점위치를 파악하기가  불가능하거니와 더불어 PART1과 PART2를  PRODUCT2에서 옮겨버린 이상  PRODUCT2의 원점 좌표위치 파악이 곤란하게 됩니다. 

참고로  여기서 여러분들이 Quick View를 이용해서 형상위치의 정렬을 하게되면 CATIA는 활성화된 문서를 기준으로  VIEW정렬을 하게 됩니다.


조금 이해가 되었는지 모르겠네요...

=====================
To Be Continued 
=====================





댓글 5개:

  1. 프로덕트2를 추가하고 part를 두개 추가 하면 플랜이 눈에 보이기 때문에 이동이 가능하다는 건가요??
    근데 프로덕트2에는 두개의 catpart가 있는데 둘다 동시에 선택이 되서 함께 이동하는 건가요??
    그리고 프러덕트2를 더블클릭해서 활성화시키고 나서 따로따로 catpart를 다시한번 이동해 주는 건가요??
    알듯말듯해서 질문드립니다..
    좋은 정보감사드립니다.

    답글삭제
  2. 위에서부터 질문에 3개네요.
    예 다 이해하신것 같네요.
    더 최신글로 가셔서 CATIA V5 Assembly 응용 예제 보시면
    조금더 이해 가실겁니다.

    답글삭제
  3. 인스턴스를 잘쓰면 좀더 관리가 잘되겠군요 ^^

    답글삭제
  4. 컴퍼넌트와 프로덕트 상호변환할 수 있을까요? 제약조건까지 같이 가능한지요? 설계를 하다보면 상호 변환이 되었어면 할때 가 있을 것 같은데요.

    답글삭제
  5. 어렵네요. 지그 설계를 배우는 입장인데 기본개념이 중요한 것 같습니다.

    답글삭제