본문으로 건너뛰기
  1. Posts/

Expression Tip.03

·3 분· loading · loading ·
NX_Man
Solution NX Expression 원형용기설계_PTS
RedBeanSoft
작성자
RedBeanSoft
Siemens 의 PLM/ALM/CAD 분야 전문 파트너입니다.
작성자
NX_Man
A tech Engineer who like GUNDAM.

NX Expression Tip. 03
#

안녕하세요

이번에는 NX Expression Tip.02에서 작업한 용기모델링을 그럴듯한 편집설계 모듈로 구성해 보겠습니다

image-20240129155400497

이전 포스트에서 소개한 관련 항목을 산출하는 방법을 이용하여 설계에 필요한 설계 SPEC을 입력하고 나머지 항목은 계산에 의해 결정되어 적용되도록 추가 Expression을 등록 및 수정한다.

신규 Expression 등록

Input_DIA = 1
Input_H = ! Input_DIA
KeyIn_DIA = 20
KeyIn_H = 48

기존의 Expression Name을 변경한다.

DIA -> Real_DIA
H -> Real_H
vol -> DIA_Area

추가 Expression을 등록한다.

DIA_0 = Volume/pi()/KeyIn_H
DIA = Ceil(sqrt(DIA_0)*2)
H = Ceil(Volume/DIA_Area)

변경된 Expression 수정

Real_DIA = IF(Input_DIA=1) KeyIn_DIA Else DIA
Real_H = IF(Input_H=1) KeyIn_H Else H
DIA_Area = (Real_DIA/2)^2*pi()

이러한 복잡한 절차를 거치는 이유는

image-20240129155719999

기존의 Sketch를 수정없이 그대로 활용할 수 있고

image-20240129155733356

Expression Formula에는 등록된 Expression만 입력이 가능하기 때문이다.

수정된 Expression을 상세하게 설명 드리면 원형용기의 용량이 결정된 상태에서

Input_DIA = 1         --> 직경을 입력한다는 의미이며 [ 1 ]= On /[ 0 ]= Off를 의미한다.
Input_H = ! Input_DIA --> !는 해당 값의 반대 값을 의미.
                          Input_DIA가 [ 1 ]이므로 Input_H는 [ 0 ]이 된다.
KeyIn_DIA = 20        --> 입력하는 직경 값
KeyIn_H = 48          --> 입력하는 높이 값

추가 Expression은 입력된 값에 의해 계산되는 값으로

DIA_0 = Volume/pi()/KeyIn_H ) --> 결정된 용량(Volume)을 높이와 원주율로 나눠 반지름의 
                                  제곱값을 구한다. 
DIA = Ceil(sqrt(DIA_0)*2)  --> sqrt()함수는 제곱근을 구하는 함수이며 DIA_0의 제곱근을
                               구하고 x2를 하여 직경을 구한다.
H = Ceil(Volume/DIA_Area)) --> 결정된 용량(Volume)을 면적값으로 나눠 용기의 높이를 구한다.

Name을 변경한 Expression은 아래와 같이 수정하는데

Real_DIA = IF(Input_DIA=1) KeyIn_DIA Else DIA
Real_H = IF(Input_H=1) KeyIn_H Else H

이는 직경( 혹은 높이 )값을 입력( 혹은 계산)하는 방식을 Input_DIA와 Input_H를 이용하여 결정하기 위하여 IF문을 이용하여 조건을 정의한다.

image-20240129160443888

모든 Expression의 수정과 등록이 완료되면 용기 용량에 해당하는 객체의 Volume을 Measure Feature로 저장한다. ( Expression Name은 [ Real_vol ]로 한다. )

NX에서의 수정작업이 완료되면 PTS 모듈을 실행하여 아래와 같이 모든 Expression을 등록한다.

image-20240129160807844

등록된 PTS 객체의 설정을 변경한다.

image-20240129160917773

  1. Input_DIA는 [ On / Off ]개념으로 작동하는 객체이므로 Display Style을 [Checkbox]로 설정한다.

image-20240129161046400

  1. Input_DIA가 [ On ]일 경우 KeyIn_DIA 항목이 활성화 되도록 하기 위해 Dependencies 항목을 위와 같이 설정한다.

image-20240129161158629

  1. Input_DIA가 [ Off ]되면 KeyIn_H 항목을 활성화 하여 입력이 가능하도록 KeyIN_H의 설정을 변경 한다.

image-20240129161247217

  1. 추가로 Real_DIA와 Real_H, Real_Vol값은 Display Style을 [ Readonly Text ]로 설정하여 생성결과를 실시간으로 확인하는 용도로 활용한다.

모든 설정이 완료되면 PTS를 저장한다.

image-20240129161320300

Assembly Navigator에서 Edit Reusable Component를 선택하여 PTS Library 실행하고

image-20240129161331228

원형 용기의 용량을 20으로 변경하면

image-20240129161350001

원형용기 직경을 20mm로 설정하였기에 해당 용기의 직경과 높이, 실제 용적을 확인할 수 있다.

image-20240129161400722

이때 용기 직경을 25mm로 변경하면 해당 용기의 직경과 높이, 실제 용적이 변경된다.

image-20240129161414457

두번째 조건으로 원형용기 직경 입력을 [ Off ]하면 운형 용기의 높이를 입력할 수 있게 되며 높이 [ 48mm ]를 입력하게 되면 용량 20cc에 해당하는 직경 값이 계산되어 표시된다.

관련 글

PTS 응용 - Line Vector 추출
·4 분· loading · loading
NX_Man
Solution NX Expression PTS Line_Vector

PTS 응용 - Path Vector 추출
#

특정 Library의 경우 X 방향과 Y방향에 해당하는 Reference 요소를 지정해줘야 생성이 가능하기에 Reference 선택 단계가 추가되는 경우가 많다.