CAD의 세대
◐ 제 1세대 - 도면 (Drawing) : 2D 평면상에 Edge들을 투영하여 표현. 일반적인 엔티티(Line, Circle, arc, text)들을 입력할 수 있고, 출력할 수 있다.
◐ 제 2세대 - 와이어 프레임(wire-frame) : 3D공간에 edge들을 표현한 것. 화면을 회전하여 2D view를 추출할 수 있다.
◐ 제 3세대 - 서피스 (surface) : Wire-frame의 에지들을 수학적 공식하에 연결한 것. 쉐이딩(shading) 된 이미지를 추출할 수 있다.
◐ 제 4세대 - 솔리드 (solid) : 서피스 내부에 대한 정보를 가지고 있어 물성치(중량, 부피, 표면적, 관성 모멘트...)를 구할 수 있고, 간섭 검사등을 할 수 있다.
Wireframe, Surface, Solid
와이어 프레임 (Wire-frame) :
◐ 정의 : 공간상에 점들을 지정하고 이것을 연결함. 정의는 이러한 방법으로 생성된 edge로 정의.
◐ 장점 : 최소의 정보만으로 원하는 형상을 구현
시스템 구축이 쉽다.
◐ 단점 : 구현하려는 모델은 형상이 간단하고 명확해야만 한다.
경계 정보나 또는 부피에 대한 정보가 없다.
물성치 계산과 해석이나 가공으로의 연장 작업이 불가능하다.
◐ 제품 : 스케치나 도면 생성의 수준
서피스 (Surface)
◐ 정의 : 간단히 설명하면 와이어 프레임의 에지를 수학적으로 넓이를 부여하는 것.
부드러운 곡면을 생성하거나 또는 NC tool path 경로를 생성하기 위하여 많이 사용
(현재는 위와 같은 부분을 솔리드로 처리할 수 있는 프로그램이 많이 있다. ex, UG)
◐ 장점 : 자동으로 Tool-Path를 생성을 할 수 있다. (2D, 2.5D의 경우에는 wire-frame으로 처리를 할 수 있고, 3D의 경우에는 솔리드로 처리를 할 수도 잇다.)
컴퓨터내에서 가상적인 목-업을 만들어 실사화 할 수 있다.
◐ 단점 : 물성치 계산이 불가능하다. (중량, 관성 모메트... )
만일 모든 면이 논리적으로 닫혀있다면 부피나 표면적은 계산을 할 수 있을 것이다.
FEA에서 shell 메시는 생성을 할 수 있지만 솔리드 메시는 생성을 할 수 없다.
◐ 제품 : CATIA, UG, Alias...
◐ 적용 : CAM이나 CG
솔리드 (Solid) :
◐ 정의 : 간단히 설명하면 서피스를 이용하여 일정 영역을 닫고, 부피에 대한 정의를 하는 것.
서피스의 정보에 제품 내/외부의 정보를 추가로 가지고 있음.
◐ 장점 : 물성치 계산을 할 수 있다.
FEA에서 솔리드 메시를 생성할 수 있다.
부품간 간섭 검사를 할 수 있다.
서피스 모델러와 마찬가지로 가상적인 목업을 생성하고 실사화 할 수 있다.
NC tool-path 생성 및 시뮬레이션을 해 볼 수 있다.
◐ 단점 : 많은 정보를 가지고 있고, 논리적으로 완전히 채워진 모델만 허용을 함.
많은 정보를 가지고 있다는 것은 가상 메모리, 파일 크기, 속도등에서 한계를 드러낼 경우가 많다.
◐ 제품 : UG, Pro/E, Solid Edge, SolidWorks, Parasolid
◐ 기능 : 기본적인 형상 + 불리언 연산
(근래 발표되고 있는 캐드들은 불리언 연산을 하지 않는다고 하지만 명령이 없다는 것이고, 내부적으로는 불리언 작업을 하고 있다고 생각을 하는 것이 좋다.)
서피스 이동을 이용한 기능 (Sweeping)
◐ 기존 모델 변경의 기능 : 라운딩 (블렌딩 또는 필렛)
경계 조건을 이용한 모델링 (Boundary Modeling)
Feature-Based Modeling
솔리더 모델링의 장점
본 내용은 일반적인 이론적인 내용에 치우치기 쉽기 때문에 Handbook of Solid Modeling에 나온 Eaton Corp.를 예로 들었습니다.
2D DB의 문제
◐ 첫째, 만일 도면이 변경되거나 또는 수정되어 정면도가 수정되었을 때 측면도, 평면도 등을 모두 수동으로 수정하여야 한다. 이때 추가로 오류가 발생할 수 있다. 하지만 솔리더 모델링을 할 경우에는 이러한 뷰가 몇 개 또는 몇 백개라고 하더라도 자동으로 수정을 해 주기 때문에 최소한 오류가 발생할 염려는 없다.
◐ 둘째, 치수를 변경해도 실제 형상이 변경되지 않기 때문에 도면의 오류가 발생한다. 만일 이렇게 작업된 도면을 IGES등으로 하청업체나 또는 발주 업체에 제출하였을 경우에는 추가적인 오류가 발생할 수밖에 없다. 하지만 솔리더 모델링을 할 경우에는 치수를 변경하면 자동으로 형상이 변경되므로 이러한 오류를 미리 막을 수 있다.
◐ 셋째, 대부분의 제품에서 두께까 있는 경우 이러한 부분을 2D에서는 제대로 표현을 할 수 없다. 만일 형상이 극단적으로 간단하면 가능하겠지만 면과 면이 만날 경우에는 설계자가 정확한 투시를 할 수 없기 때문이다.
설계 변경을 위한 도면 작업
(Paperwork for engineering change notices - ECNs)
2D CAD에서 도면 변경이 일어날 경우 각각의 엔티티의 연계성이 없어 작업을 처음부터 다시해야 하는 경우도 많이 발생한다. 하지만 솔리드 모델링에서는 엔티티와 엔티티 그리고 피쳐와 피쳐, 부품과 부품간에 연계성을 부여할 수 있으므로 최소한의 작업만으로 도면 변경을 할 수 있다.
2D 기능의 부족
◐ 첫째, 2D CAD에서 단면도를 생성할 경우 설계자는 단면도를 생성할 때마다 형상을 처음부터 투상을 해야 한다. 많은 시간과 설계 오류가 발생하는 부분이다. 하지만 솔리드 모델링은 대부분 자동으로 처리를 해 주기 때문에 설계 시간과 정밀도에서 많은 효과가 기대된다.
◐ 둘째, 2D로 설계를 할 경우 제품 물성치에 관련된 자료가 없어 설계자가 제품에 대한 정확한 판단을 내리기 힘들지만 솔리드 모델링은 이러한 부위를 간단히 처리할 수 있다.
제품의 정보와 도면과의 연계
만일 2D CAD로 설계를 한다면 현재 조립도 도면내에 몇 개의 부품이 있는지 각각의 부품은 어떤 즉, 제품명, 재질, 수량, 물성치등을 가지고 있지 않다. 물론 특수 목적으로 개발된 3'rd party 프로그램이 있지만 각 회사의 업무 특성을 만족해 주지 못하고 있지만 대부분의 솔리드 모델링 시스템에서는 이러한 문제를 해결하고 있다.
생산과 관련된 부분
사실 아무리 간단한 제품이라도 2차원 도면으로는 형상을 완벽히 표현하기가 힘들다.
제품을 개발한 설계 담당자가 아닌 도면 검토, 자재-구매, 가공, 품질 검사(QC), 조립 및 승인의 작업에서 도면의 오판으로 인한 오류가 발생할 수 있지만 솔리드 모델링 시스템으로 작업을 할 경우 형상에 대한 어떤 투상이라도 가능하기 때문에 2D CAD로 작업한 제품에 비하여 오류를 비교적 줄일 수 있다.
또, 사출 제품이나 주물의 경우 필수적으로 필요한 빼기 구배를 2D CAD로는 정확하게 표현하기가 힘들다. 제품의 조립 지시서나 또는 품질 검사등에 필요한 분해도를 2D CAD에서는 처음부터 작업을 다시 해야하지만 대부분의 솔리드 모델링 시스템에서는 이러한 분해도를 자동-반자동으로 생성할 수 있다.
복잡한 주물 제품(복잡한 곡면이 많다.)을 가공할 때 2D CAD에서는 Jig나 Fixture가 정확하게 설계하기가 힘들다. 하지만 솔리드 모델링 시스템을 사용할 경우 제품과 Fixture간 간섭이 일어나고 있는지 아니면 얼마의 허공이 있는지를 쉽게 검사할 수 있다.
NC tool-path를 생성할 경우 기존 2D CAD의 데이터를 이용해서는 2.5D밖에 되지 않지만 CAM 시스템이 지원하는 한 솔리드 모델링 시스템에서 만든 데이터를 이용하면 5축 가공까지 할 수 있다.
솔리더 모델링의 한계
아래와 같은 분야는 아직까지 대부분의 솔리더 모델러가 해결하기 힘든 분야이다.
(아래의 예는 서피스 모델링 기능이 없거나 또는 서피스 모델링 기능이 있다고 하더라도 서피스를 수정할 수 있는 기능이 약한 경우를 적용한 것임)
◐ 인체와 닿는 부품
◐ 면의 품질이 중요한 제품(자동차 외곽, 항공기, 선박 외곽...)
◐ 외부에서 서피서 데이터를 받아오는 경우
◐ Reverse Engineering을 수행하는 경우
◐ 형상이 난해하여 솔리더 모델러로는 시간이 너무 많이 걸릴 경우
◐ 복잡한 주물이나 사출물
Geometry vs Topology
Geometry는 형상, 크기, 위치등의 정보를 가지고 있는데 Topology는 이러한 geometry간의 관계(relationship)에 대하여 정의를 하고 있다.
즉, 두 개의 면은 하나의 에지를 공유한다거나 또는 솔리드 모델간의 불리언 연산과 같은 정보등이다.
좀더 구체적인 예를 든다면 육면체가 있다고 가정을 하자. Geometry는 3가지 유형의 정보를 가지고 있다. Point, Edge, Face이다. 이러한 육면체는 8개의 point와 12개의 edge, 6개의 face로 구성되어 있다.
Topology는 육면체의 솔리더 모델러는 6개의 face로 구성되었고, 이러한 face와 face의 끝단은 서로 일치하며, 각각의 face는 4개의 edge로 연결되었고, 각각의 edge는 2개의 정점(vertex)으로 구성되었다.
Geometry elements ;Topology elements
Point Vertex
Line Edge
Plane Face
Manifold vs Non-Manifold
자동차 부품 ? 유/공압 부품?
솔리더 모델러를 수학적으로 구분을 하면 매니폴더(Manifold)와 난-매니폴더(Non-Manifold)로 구분을 할 수 있다. 3D CAD/CAM 분야에서 Manifold라는 의미는 오일러(Euler)의 공식을 만족하느냐의 유무이다.
즉, 오일러의 공식을 만족을 하면 매니폴더이고, 만족하지 않으면 Non-Manifold이다.
Euler's rule : Face+Vertex-Edge=2
만일 육면체라고 가정을 하였을 경우 Face(6)+Vertex(8)-Edge(12)=2
Manifold Object (Solid)
Euler 방정식을 만족
1 Edge는 2Face와 만남
Material Side는 모든 Face의 한쪽에만 존재
따라서 위의 오일러의 공식을 만족하지 않을 경우에는 Non-Manifold임.
- 두 개 이상의 개체(object)가 하나의 형상(geometry - vertex, edge...)에 만날 경우
◐ 도형의 꼭지점과 변의 개수
도형에서 꼭지점의 개수를 v, 변의 개수를 e라고 하면
v-e=1
◐ 꼭지점과 변으로 이루어진 도형의 꼭지점, 변, 면의 개수
꼭지점의 개수를 v, 변의 개수를 e, 면의 개수를 f라고 하면
v-e+f=1
◐ 구와 연결 상태가 같은 다면체의 꼭지점, 모서리, 면의 개수
꼭지점의 개수를 v, 모서리의 개수를 e, 면의 개수를 f라고 하면
v-e+f=2(오일러의 공식)
◐ 도넛(튜브)과 연결 상태가 같은 다면체의 꼭지점, 모서리, 면의 개수
꼭지점의 개수를 v, 모서리의 개수를 e, 면의 개수를 f라고 하면
v-e+f=0
◐ 한 꼭지점 또는 한 모서리를 공유하는 두 다면체의 꼭지점, 모서리, 면의 개수
꼭지점의 개수를 v, 모서리의 개수를 e, 면의 개수를 f라고 하면
v-e+f=3
아래는 Non-Manifold 오류가 발생한 예들입니다.
구속 조건
1. 형상적(기하학) 구속 조건 :
Horizontal, Vertical, Parallel, Tangent...
2D 캐드를 사용했다면 AutoCAD의 OSNAP이라고 생각을 하면 편리하다. 차이점은 일반적인 2D CAD의 경우 OSNAP이 작도시에만 유효하지만 대부분의 3D CAD에서는 구속조건 즉, OSNAP을 제거하기 전에는 구속조건이 계속 유지된다.
캐드 시스템에 따라 구속조건을 화면상에 표시해 주는 경우도 있고, 화면에는 보이지 않고, 특수한 화면을 띄워야만 보이는 경우도 있다. 만일 구속 조건이 화면상에 보인다면 약간 화면이 복잡해 보이거나 지저분해 보일 수는 있지만 설계자가 임의의 엔티티에 어떤 구속조건이 들어갔는지 바로 확인을 할 수 있기 때문에 실제로는 편리하다고 판단된다.
2. 치수 구속 조건 :
거리간 치수 기입, 각도의 치수기입, 각 개체(entity)의 치수 기입
일반적인 2D CAD에서는 치수를 변경해도 화면상의 엔티티의 크기나 위치는 변경되지 않는다. 즉 치수를 입력은 할 수 있지만 치수 구속 조건을 지원하지 않기 때문이다. 대부분의 삼차원 캐드는 치수를 변경하면 관련된 크기나 또는 위치가 변경된다.
3. 대수학 구속 조건 :
A=BxTan(30°)
설계 도중에 빈번히 요구되는 치수간의 구속 조건이다. 즉, 베어링 하우징(bearing housing)에 축(shaft)이 조립된다고 가정하자. 이때 하우징의 지름은 항상 축의 지름에 +0.005mm로 되어야 하는 경우가 많을 것이다. 이런 경우 '베어링 하우징의 지름=축의 지름 +0.005' 라는 수식을 넣어주면 된다. 부품과 부품간에 이러한 구속조건을 부여할 수도 있고, 단일 부품에 있는 치수간에 구속조건을 부여할 수도 있다.
Curve
1. 스플라인의 차수(Degree of spline)
: 모든 스플라인은 차 수(degree)를 가지고 있다. 즉, 폴리노미널(polynominal)의 차 수가 스플라인을 결정한다.스플라인을 그릴 때 필요한 포인트의 수는 스플라인의 차 수(degree)보다 최소한 하나 더 많아야 한다.
나는 가능하다면 가능한 3차 스플라인(Cubic spline)을 사용하기를 추천한다.
이유는 아래와 같다.
◐ 보다 유연함
◐ 연산을 적게 하므로 작업 속도가 빠르다.
◐ Solid Edge, SolidWorks와 같은 많은 시스템이 현제 3차 스플라인만을 지원한다.
위의 그림과 같은 높은 차 수 커버의 특징은 아래와 같다.
◐ 형상을 변경하는 것이 어렵다. (예 : Pole의 이동)
◐ 설계자가 원하지 않는 변형이 발생할 수 있다.
◐ 보다 많은 연산을 하여야 하므로 작업 속도가 떨어진다.
◐ 높은 차 수를 지원하지 않는 시스템으로 데이터를 보내는 경우 문제가 발생할 수 있다.
아래와 같은 정보가 커버에 포함되고 있다.
◐ 커버의 차 수
◐ Pole의 위치
◐ Curve가 어떤 변수들로 정의 되었는지에 대한 정보
◐ 포인트의 정의 (새로 생성하였을 경우)
◐ Fit weight (새로 생성되었을 경우)
Define point vs Knotpoints
◐ Define point
: 스플라인을 정의함. 만일 스플라인이 pole로 정의가 되었다면 그 스플라인은 어떤 define point도 없다.
◐ Knotpoints
: 스플라인의 끝점. 따라서 segment가 1개인 스플라인은 오직 두 개의 knotpoints만을 가지고 있다.
◐ 만일 스플라인이 3차 라면 define points와 knotpoints는 동일한 개수를 가지고 있다.
Solid Modeler에서의 3D 생성
Extrude :
주어진 평면에 원하는 2D 형상을 생성하여 높이를 부여함. 일반적으로 주어진 평면에 직각으로 높이를 부여하지만,캐드 시스템에 따라서 원하는 벡터로 높이를 부여할 수도 있다.
Revolve :
주어진 평면에 원하는 2D 형상을 생성하고 회전을 시킬 축을 지정하여 원하는 각도만큼 회전시켜 형상을 생성
Sweep :
주어진 평면에 원하는 2D 형상을 생성하고, 이것을 주어진 2D 또는 3D 곡선(curve)을 따라가면서 형상을 만드는 것.
캐드 시스템에 따라서 두 개 이상의 단면을 지정하거나 두 개 이상의 곡선을 지정할 수 있다.
Loft :
두 개 이상의 단면(section)이 다른 공간상에 있을 경우 이 단면들을 상호 연결하여 원하는 형상을 만드는 것. 부가적으로 경로를 설정할 수 있다.
각각의 단면에 있는 엔티티의 개수가 맞지 않을 경우 생성되는 면(face)이 꼬이는데 이 경우 사용자가 수작업으로 각각의 정점(vertex)을 지정할 수 있는 기능이 있어야 한다.
파라메트릭 모델링 순서 (Parametric Modeling Sequence)
1. 개략적인 형상을 2차원적으로 입력을 한다.
2. 형상 구속 조건을 부여한다. (일반적으로 치수 구속 조건보다 형상 구속 조건을 먼저 부여하는 것이 올바르다.)
3. 치수 구속 조건을 부여한다.
4. 입력한 치수를 원하는 치수값으로 수정한다.
5. 위의 #3, #4를 원하는 형태가 나올 때 까지 반복 작업을 한다.
6. #5까지의 작업으로 생성된 형상을 3D로 변환한다. (Extrude, Revolve, Sweep, Loft)
Assembly
Assembly란?
공간상에 논리적인 구조와 계층을 가진 부품(instance)들
이 내용은 일반 설계에서 말하는 assembly라는 개념 보다는 CAD 내부적인 assembly의 내용임.
Instance : Part or/and sub-assembly
Assembly를 구축하는 이유
물성치의 계산, 실제 제품을 조립 / 시공했을 때의 형상 및 문제점을 미리 파악
BOM이나 Part List의 생성
간섭 체크, 기구적 움직임 확인 또는 에니메이션 생성
Part와 Instance의 차이점
부품은 하나의 조립도에 한번만 조립되는 제품
Instance의 경우 조립도에서 부품을 배열하였을 경우 원본을 제외한 사본들.
만일 원본이 변경되면 사본도 같이 변경됨.
원본의 위치가 변경(조립 조건 변경...)될 경우 사본도 같이 변경됨
사본(Instance)는 최소한의 데이터를 가져와야 함.(ex. 개수)
Assembly의 구속 조건
부X,Y,Z 방향으로 이동할 수 있고,ØX ,ØY, ØZ 방향으로 회전(총 6개의 DOF)할 수 있다.
하지만 조립을 할 경우 Edge(Axis)가 아닌 면(face)으로 조립을 할 경우 DOF는 3개로 줄어든다.
즉, face와 face를 일치 : -3DOF
Edge와 edge를 평행 또는 직각으로 구속조건을 부여시 : -1DOF
Vertex와 2개의 edge간 구속 조건을 부여시 : -2DOF
일치할 축(axis)끼리 일치하였을 경우 (Bush+Shaft) : -4DOF
간섭 검사(Interference Detection)
각 소프트웨어 마다 약간의 차이점은 있겠지만 간섭 검사는 아래와 같은 흐름으로 개발 된다.
일반적으로 CAD에서 말하는 간섭 검사는 #1항의 정적 간섭 검사(Static Interference Detection)를 의미한다.
◐ 정적 간섭 검사 (Static Detection)
조립도 내에서 부품들을 조립시켜 놓고 원하는 부품들 혹은 전체를 선택하여 간섭검사를 실시함.
캐드 시스템에 따라 간섭된 부분을 단순히 화면상에 표시(부가적으로 부피나 x,y,z의 표시)하는 경우도 있고, 간섭된 부분을 하나의 부품으로 생성할 수도 있으며, 간섭이 일어난 부분에 대한 보고서를 생성해 주는 경우도 있다.
◐ 동적 간섭 검사 (Dynamic Detection)
대부분의 솔리드 모델러들은 매크로나 또는 API를 이용하여 조립되어 있는 부품들이 일정한 각도나 거리만큼 움직임을 확인할 수 있는 방법을 가지고 있다. 물론 각각의 부품들을 조립할 때 완전히 구속되지 않고, 움직일 수 있는 자유도(DOF : Degree Of Freedom)를 가지고 있어야 할 것이다.
위에서 언급한 매크로나 API를 이용하지 않고 단지 Drag & Drop으로 부품들의 간단한 기구적 움직임을 확인할 수 있는 CAD 시스템도 있다. 아무튼 위와 같은 방법으로 부품이 움직이다가 부품간 간섭이 일어날 경우 이것을 사용자에게 알려줄 수 있는 기능이다.
캐드 시스템이 아닌 Kinematics 또는 Dynamics CAE(예 : MSC사의 Working Model)에서도 동일한 효과를 얻을 수 있다.
◐ 공차 해석 (Tolerance Analysis)
단일 혹은 두 개 이상의 부품들이 각각의 치수에 있는 공차 범위내에서 제작이 되었다고 해도 이러한 공차들이 계속 합쳐지면 누적 공차가 발생하게 된다.
즉, ±0.1의 치수를 가지는 제품이 20개가 조립이 되었고, 각각의 부품들은 +0.1mm로 제작되었다고 하자. 각각의 제품들은 모두 제작 후 검사를 해도 아무 문제가 없지만 조립을 하면 끝에 있는 부품은 최대 2mm의 누적공차가 발생하게 되어 타 부품과 간섭이 발생하거나 조립이 불가능한 경우가 발생할 수 있다.
이러한 부분을 캐드에서 처리하는 것으로 일반적으로 미드 레인지 캐드에서는 지원하지 않으며 Unigraphics와 같은 하이엔드(ex. UG)캐드 시스템에서는 이러한 기능을 가지고 있다.
Web-based Modeling CAD의 데이터를 web-browser에서 지원하는 형식으로 저장을 할 수 있어야 하고, 만일 이것이 되지 않을 경우에는 Active "X"를 사용해야 한다.
Web-browser (iExplorer, Netscape)에서 인식할 수 있는 데이터 포맷.VRML (Virtual Reality Modeling Language) : ASCII로 되어 있으며 이 형식을 읽기 위해서는 전용 plug-in 프로그램이 있어야 한다.
CGM (Computer Graphics Metafile) : 전용 plug-in프로그램이 필요하며, 저장을 하기 위해서는 추가 프로그램 구입이 있어야 한다.
DWF (Autodesk's Drawing Web Format) : AutoCAD내에서 다시 한 번 저장을 하여야 한다.
* 만일 캐드가 Active "X"를 지원할 경우에는 위와 같은 데이터로 변환하지 않고 자체적인 데이터를 바로 이용을 할 수 있다.
즉, Solid Edge의 경우에는 무료로 배포하는 SmartViewer를 설치하면 Solid Edge의 데이터와 Parasolid 및 UG의 파일 형식을 Web에서 상호
Auto CAD 명령어 (0) | 2010.10.20 |
---|---|
CAD Font (0) | 2010.10.07 |
CAD 명령어 바꾸기(pgp파일) (0) | 2010.10.06 |
Auto CAD 2009 배경화면(색상) 바꾸기 (1) | 2010.10.06 |
CAD2004 동영상강좌 (0) | 2010.10.06 |
댓글 영역