Training | Autodesk iLogic 교육 1일차 by YMK
iLogic 활용이 어려우시다면, 고객사에서 진행한 iLogic 교육 자료를 확인해 보십시오.

--- Something NEW 何か新しいチカラを ---
『 Company motto 』
Something New 何か新しいチカラを By the people, the company is supported and gets propulsive power for new development . small, but true power of something new appears in our own ability.
“ Something New “ is our motto.
『 Company motto 』
Something New 何か新しいチカラを By the people, the company is supported and gets propulsive power for new development . small, but true power of something new appears in our own ability.
“ Something New “ is our motto.
주식회사 YMK
(YMK) AutoDesk i-Logic 교육 1일차
2023.02.28
--- Something NEW 何か新しいチカラを ---
※ Agenda i-Logic 기본 구성 1) 규칙, 양식 vs 전역 양식, 외부 규칙의 차이 2) 이벤트 트리거
i-Logic 활용을 위한 준비
1) i-Logic 기본 문법(Visual Basic) 2) 자주 사용하는 Visual Basic Method 3) i-Logic 코드 조각(Snippet) 사용 예시 4) iProperties API
설계 자동화 예시 1) Excel & 매개변수 연동 2) Excel & 매개변수 연동 실습 2) i-Logic & 매개변수 연동 4) i-Logic & 매개변수 연동 실습
--- Something NEW 何か新しいチカラを ---
※i-Logic 기본 구성 1) 규칙, 양식 vs 전역 양식, 외부 규칙의 차이
[UI] [CODE]
[규칙, 양식]
[.ipt] [.iam]
[.ipt] [.iam]
[UI] [CODE]
[규칙, 양식] [전역 양식, 외부 규칙]
저장 위치 Ipt, iam, dwg File에 저장. UI, Code File을 따로 저장.
적용 범위 저장된 File에서만 적용. 모든 File 적용.
특이 사항 수정 및 배포에 불합리. 수정 및 배포에 유리함.
※ 규칙 : i-Logic을 실행하는 Code ※ 양식 : 매개변수, i-Logic을 관리하는 사용자 UI
[외부 규칙, 전역 양식]
※ i-Logic을 사용하면 Code 수정이 빈번하게 발생함. 그러므로 수정 및 배포에 용이한 [외부 규칙, 전역 양식] 사용 권장.
--- Something NEW 何か新しいチカラを ---
※i-Logic 기본 구성 2) 이벤트 트리거
※ Event Trigger -. i-Logic 규칙을 Inventor의 Event가 발생했을 때, 자동 실행 해주는 장치. -. 회사 내규상 반드시 적용 되어야 하는 i-Logic 규칙을 각 Event 조건에 맞추어 사용. -. 예시로 “YMK”에서는 반드시 적용되어야 하는 i-Logic은 모델링 저장 전에 실행 되도록 사용.
-. 모든 문서 : ipt, iam, dwg, idw 모두 적용. -. 부품 : ipt만 적용. -. 조립품 : iam만 적용. -. 이 문서 : 현재 오픈 되어 있는 문서만 적용. (※ 이벤트 규칙이 더 추가됨.)
--- Something NEW 何か新しいチカラを ---
※i-Logic 기본 구성 이벤트 규칙 특성 적용 예시 적용 범위
새 문서 Template으로 저장된 ipt, iam, dwg파일로 새로운 문서를 만들 때 발생.
부품을 생성할 때 부품에 대한 품명 List 메시 지 박스가 나타나고 선택하여 사용.
모든 문서, 부품, 조립품, 도면, 이 문서
문서 열기 후 저장 된 문서를 오픈 할 때 발생. - 모든 문서, 부품, 조립품, 도면, 이 문서
문서 저장 전 문서 저장 버튼을 누르면 발생. 회사 내규로 반드시 적용 해야 하는 내용에 대 해서 모두 저장 전으로 적용.
모든 문서, 부품, 조립품, 도면, 이 문서
문서 저장 후 문서 저장 과정 후 발생. - 모든 문서, 부품, 조립품, 도면, 이 문서
문서 닫기 문서 닫기를 누를 때 발생. Vault에 체크인 여부 확인 메시지 발생. 모든 문서, 부품, 조립품, 도면, 이 문서
모형 상태가 활성화 됨 - 부품, 조립품, 이 문서
임의의 모형 매개변수 변경 모델링에 사용된 매개변수가 변경될 때 발 생. Hole&Tap 색상 변경에 대해 적용. 부품, 조립품, 이 문서
모든 사용자 매개변수 변경 사용자 매개변수가 변경 될 때 발생. - 부품, 조립품, 이 문서
iProperty 변경 Modeling의 iProperties값이 변경될 때 발생. 저장 시간에 따라 모델링 변경 시 리비전 변경 여부에 대해 확인 메시지. 이 문서
피쳐 억제 변경 Modeling의 피쳐를 억제하거나 억제 해제 할 때 발생. - 부품, 이 문서
부품 형상 변경 Modeling의 형상이 변경 될 때 발생. Hole&Tap 색상 변경에 대해 적용. 이 문서
재질 변경 Modeling의 재질이 변경 될 때 발생. 재질에 따라 표면처리, 경도 등 옵션들을 선택 하는 메시지 박스가 나타나고 선택하여 사용. 부품, 이 문서
--- Something NEW 何か新しいチカラを ---
※i-Logic 활용을 위한 준비 1) i-Logic의 기본 문법(Visual Basic)
[변수 선언]
Dim ProjectName As String
[Visual Basic Data Type]
ProjectName = iProperties.Value("Custom", “Project Name")
변수 이름 Data Type
“ProjectName”이라는 변수에 사용자 iProperties “Project Name”을 할당함.
※ Inventor API & iLogic 코드 조각을 통해 얻어낸 속성을 변수에 할당하고 그 변수를 가지고 프로그래밍 함.
--- Something NEW 何か新しいチカラを ---
※i-Logic 활용을 위한 준비 1) i-Logic의 기본 문법(Visual Basic)
[조건문 If…Else…End If]
If ProjectName = “Autodesk” MessageBox.Show(ProjectName , "Title") Else if ProjectName = “YMK” Return Else ProjectName = “Nothing Project” End If
만약 ProjectName이 “Autodesk” 라면 ProjectName에 할당 된 메세지 박스를 보여줘라 만약 ProjectName이 “YMK” 라면 코드를 종료해라 위의 조건이 둘 다 아니라면 ProjectName에 “Nothing Project”를 할당해라. 끝
[반복문 For… Next]
For i =1 to 10 MessageBox.Show(i, "Title") Next
1~10을 차례대로 변수 i에 반복해서 할당하고 i 에 할당 된 메세지 박스를 보여줘라 끝
[반복문 For Each… Next] Array = {1, 3, 5, 7, 9} For Each i in Array MessageBox.Show(i, "Title") Next
배열형식의 “Array” 선언 “Array”라는 배열에서 인자를 하나씩 꺼내서 i에 할당 i 에 할당 된 메세지 박스를 보여줘라 끝
--- Something NEW 何か新しいチカラを ---
※i-Logic 활용을 위한 준비 1) i-Logic의 기본 문법(Visual Basic)
[반복문에서 빠져 나오기]
For i =1 to 10 If i=5 Exit For Else MessageBox.Show(i, "Title") End If Next
[반복문에서 예외 처리]
For i =1 to 10 If i=5 Continue For Else MessageBox.Show(i, "Title") End If Next
[예외 처리 Try…Catch…End Try]
Dim array1 As New ArrayList array1.Add(“a”) array1.Add(“aa”) array1.Add(“aaa”) array1.Add(“aaaa”) For i = 1 To 10 Try ar = array1.Item(i) MessageBox.Show(ar, “Title”) Catch Continue For End Try Next
-. array1의 인자가 4개 이기 때문에 i 가 5이상 일 경우 오류 발생 -. 오류사항에 대해 Try문으로 예외 처리 하기 때문에 실제로는 오류 발생하지 않음.
Try에서 오류 발생하면 Catch로 넘어감
--- Something NEW 何か新しいチカラを ---
※i-Logic 활용을 위한 준비 2) 자주 사용하는 Visual Basic Method
[ArrayList 요소 추가(Add)]
Dim arr As New ArrayList Arr.Add(“AutoDesk1”) Arr.Add(“AutoDesk2”)
[문자열 포함 여부 확인(Contains)]
Newstr = “AutoDesk” If Newstr.Contains(“Auto”) MessageBox.Show(“ok”, "Title") End If
[문자열 쪼개기(Split)]
Newstr = “Auto_Desk” Split_str = Newstr.Split(“_”)(1) MessageBox.Show(Split_str, "Title")
-. “Auto”라는 단어가 포함 되어 있다면 True를 반환
-. “_”라는 단어를 기준으로 문자를 쪼갠 다음 (1)인자를 반환. -. (1) 인자는 0부터 시작, 만약 쪼갠 문자열의 첫 번째를 반환하려면 (0)을 입력해야 함.
[문자열 쪼개기(Split.Substring)]
Newstr = “Auto_Desk” Split_str = Newstr.Split(“_”)(1).Substring(2, 2) MessageBox.Show(Split_str, "Title")
-. Split으로 쪼갠 문자열에서 Substring을 사용해서 원하는 문자열만 가져온다. -. Split으로 “Desk”라는 문자열을 가져오고 Substring으로 “sk“ 만 가져온다.
--- Something NEW 何か新しいチカラを ---
※i-Logic 활용을 위한 준비 3) i-Logic 코드 조각(Snippet) 사용 예시
i-Logic 코드 조각(Snippet) 사용 방법 도움말 링크 (해당 메시지를 클릭해주세요!)
https://help.autodesk.com/view/INVNTOR/2022/KOR/?guid=GUID-28897F28-3C66-4360-85CF-36501D3E7EF2
--- Something NEW 何か新しいチカラを ---
※i-Logic 활용을 위한 준비 3) i-Logic 코드 조각(Snippet) 사용 예시
매개변수
Parameter("d0")
※ 매개변수에 “test”라는 변수가 미리 만들어져 있어야 함. ※ 값을 수정할 때에는 반드시 변수의 단위에 맞추어 Data를 입력.
Parameter(“test") = 1.5
[매개변수의 값을 수정하기]
P = Parameter(“test")
[매개변수의 값을 읽어오기]
피쳐
Feature.IsActive("featurename")
[피쳐 억제]
Feature.IsActive(“돌출24") = False
[피쳐 활성]
Feature.IsActive(“돌출24") = True
피쳐
Feature.Color("featurename") [피쳐 색상 변경]
Feature.Color (“돌출24") = "매끄러움 - 빨간색"
※ 색상은 “모양 라이브러리”에 등록 되어 있는 색상 사용.
--- Something NEW 何か新しいチカラを ---
※i-Logic 활용을 위한 준비 3) i-Logic 코드 조각(Snippet) 사용 예시
구성요소(클래식)
Component.IsActive("Part1:1")
메시지 상자
MessageBox.Show("Message", "Title")
Component.IsActive("Part1:1") = False
[조립품에서 파트 억제]
Component.IsActive("Part1:1") = True
[조립품에서 파트 활성]
구성요소(클래식)
Component.Color("PartA:1") [피쳐 색상 변경]
Component.Color("PartA:1") = "매끄러움 - 빨간색"
※ 색상은 “모양 라이브러리”에 등록 되어 있는 색상 사용.
※ Part 이름은 파일명이 아닌, 조립품 검색기에서 표현된 이름
[Data 확인 시 많이 사용]
P = Parameter(“test") MessageBox.Show(P , "Title")
[예, 아니오 버튼]
P = Parameter(“test") If P > 1.0 yesNo = MessageBox.Show(“색상을 변경하시겠습니까?” , "Title“ ,MessageBoxButtons.YesNo) If yesNo = vbYes Feature.Color(“돌출24") = "매끄러움 - 빨간색“ Else Return End if End if
--- Something NEW 何か新しいチカラを ---
※i-Logic 활용을 위한 준비 3) i-Logic 코드 조각(Snippet) 사용 예시
iProperties
iProperties.Value("Custom", "PropertyName")
Cus_iPro = iProperties.Value("Custom", "PropertyName")
[사용자 iProperties값 가져오기]
iProperties.Value("Custom", "PropertyName") = “ok”
[사용자 iProperties값 수정하기]
※ 값을 수정할 때 사용자 iProperties에 항목이 없다면, 새로 추가되면서 Value 값이 입력 됨.
--- Something NEW 何か新しいチカラを ---
※i-Logic 활용을 위한 준비
Design Tracking Properties
Property Name Type iLogic code
프로젝트-권한 String iProperties.Value("Project", "Authority")
프로젝트-웹 링크 String iProperties.Value("Project", "Catalog Web Link")
Categories String iProperties.Value("Project", "Categories")
상태-점검자 String iProperties.Value("Project", "Checked By")
프로젝트-추정 비용 Currency iProperties.Value("Project", "Cost")
프로젝트-비용 센터 String iProperties.Value("Project", "Cost Center")
프로젝트-작성 날짜 Date iProperties.Value("Project", "Creation Time")
상태-점검 날짜 Date iProperties.Value("Project", "Date Checked")
업데이트 연기 Boolean iProperties.Value("Project", "Defer Updates")
프로젝트-설명 String iProperties.Value("Project", "Description")
상태-설계 상태 Long iProperties.Value("Project", "Design Status")
프로젝트-설계자 String iProperties.Value("Project", "Designer")
Document SubType String iProperties.Value("Project", " Document SubType")
Document SubType Name String iProperties.Value("Project", " Document SubType Name")
프로젝트-엔지니어 String iProperties.Value("Project", "Engineer")
상태-엔지니어링 승인자 String iProperties.Value("Project", "Engr Approved By")
상태- 엔지니어링 승인날짜 Date iProperties.Value("Project", "Engr Date Approved")
Manufacturer String iProperties.Value("Project", "Manufacturer")
Design Tracking Properties
Property Name Type iLogic code
재질 String iProperties.Value("Project", "Material")
상태-제조 승인자 String iProperties.Value("Project", "Mfg Approved By")
상태-제조 승인 날짜 Date iProperties.Value("Project", "Mfg Date Approved")
프로젝트-부품 번호 String iProperties.Value("Project", "Part Number")
프로젝트-프로젝트 String iProperties.Value("Project", "Project")
프로젝트-스톡 번호 String iProperties.Value("Project", "Stock Number")
상태-상태 String iProperties.Value("Project", "User Status")
프로젝트-공급업자 String iProperties.Value("Project", "Vendor")
Weld Material String iProperties.Value("Project", "Weld Material")
4) iProperties API
--- Something NEW 何か新しいチカラを ---
※i-Logic 활용을 위한 준비
Inventor Document Summary Information
Property Name Type iLogic code
요약-작성자 String iProperties.Value("Summary", "Author")
요약-주석 String iProperties.Value("Summary", "Comments“)
요약-키워드 String iProperties.Value("Summary", "Keywords")
Last Saved By String iProperties.Value("Summary", "Last Saved By")
썸네일 IPictureDisp iProperties.Value("Summary", "Thumbnail")
프로젝트-리비전 번호 String iProperties.Value("Summary", "Revision Number")
요약-주제 String iProperties.Value("Summary", "Subject")
요약-제목 String iProperties.Value("Summary", "Title")
Inventor Summary Information
Property Name Type iLogic code
요약-범주 String iProperties.Value("Summary", "Category")
요약-회사 String iProperties.Value("Summary", "Company“)
요약-관리자 String iProperties.Value("Summary", "Manager")
4) iProperties API
--- Something NEW 何か新しいチカラを ---
※설계 자동화 예시 1) Excel & 매개변수 연동
Connecting
①
① Excel에서 양식에 맞게 Data 입력. ② Inventor 매개변수에서 링크 클릭하고 작성한 Excel 연결. ③ 매개변수에 맵핑 된 Data확인. ※ 주의 사항 ⓐ매개변수 이름은 띄어쓰기 불가. ⓒ단위는 반드시 입력.
②
③
ⓐ ⓒ
--- Something NEW 何か新しいチカラを ---
※설계 자동화 예시 2) Excel & 매개변수 연동 실습
-. ① Excel 시트에 설계 Data 입력.(※ Modeling과 같은 Project 파일 아래 저장되어야 함.) -. ② 인벤터 왼쪽 상단에 [관리] 탭 – [매개변수] 클릭.
①
②
--- Something NEW 何か新しいチカラを ---
※설계 자동화 예시
-. ③ 매개변수 창 왼쪽 하단에 [링크] 클릭. -. ④ 저장한 Excel File 선택. -. ⑤ 매개변수 창에 연동된 Data 확인.
③
④
⑤
2) Excel & 매개변수 연동 실습
--- Something NEW 何か新しいチカラを ---
※설계 자동화 예시
-. ⑥ 돌출 거리 입력창 오른쪽 화살표 클릭. -. ⑦ [매개변수 나열] 클릭.
⑥
⑦
2) Excel & 매개변수 연동 실습
--- Something NEW 何か新しいチカラを ---
※설계 자동화 예시
-. ⑧ “LM_Rail_L” 클릭. -. ⑨ Data 확인.
⑧
⑨
2) Excel & 매개변수 연동 실습
--- Something NEW 何か新しいチカラを ---
※설계 자동화 예시
-. LM Guide Rail에 Counter Bore 작업을 위해 ⓐ 작업점을 찍고 치수를 입력한다. -. ⑩ 치수 편집 오른쪽 화살표 클릭. -. ⑪ [매개변수 나열] 클릭. -. ⑫ “LM_Rail_G” 클릭. -. ⓑ 입력된 Data 확인.
ⓐ
⑩
⑪ ⑫
ⓑ
2) Excel & 매개변수 연동 실습
--- Something NEW 何か新しいチカラを ---
※설계 자동화 예시
⑬ ⑭
⑮
-. ⑬ 개수 입력창 오른쪽 화살표 클릭. -. ⑭ [매개변수 나열] 클릭. -. ⑮ “LM_Rail_Hole_Q” 클릭.
2) Excel & 매개변수 연동 실습
--- Something NEW 何か新しいチカラを ---
※설계 자동화 예시 2) Excel & 매개변수 연동 실습
--- Something NEW 何か新しいチカラを ---
※설계 자동화 예시 3) i-Logic & 매개변수 연동
[iLogic 양식 사용]
①
②
③
① iLogic 전역 양식으로 이동. ② 마우스 오른쪽 클릭 → 양식 추가 ③ 양식 편집기에서 매개변수를 추가
Drag
--- Something NEW 何か新しいチカラを ---
※설계 자동화 예시
ⓐ ⓑ
ⓐ
ⓑ
ⓒ
ⓓ
ⓓ
ⓒ ⓔ
ⓔ
[iLogic 양식 - 도구상자] 3) i-Logic & 매개변수 연동
--- Something NEW 何か新しいチカラを ---
※설계 자동화 예시 [설계 자동화에 많이 사용되는 iLogic Code]
Component.Add(“검색기에 표현될 이름“, “File”, Position := Nothing, grounded := False, visible := True, appearance := Nothing) 1) 부품 추가
Constraints.AddInsert(“구속 이름”, “검색기에 표현될 이름1“, “entityName1”, “검색기에 표현될 이름2“, “entityName2”, axesOpposed := True, lockRotation := True)
3) Hole 구속 추가 Component.Delete(“검색기에 표현될 이름“) 2) 부품 삭제
Constraints.AddFlush (“구속 이름”, “검색기에 표현될 이름1“, “entityName1”, “검색기에 표현될 이름2“, “entityName2”) 4) Flush 구속 추가
Constraints.AddMate(“구속 이름”, “검색기에 표현될 이름1“, “entityName1”, “검색기에 표현될 이름2“, “entityName2”) 5) Mate 구속 추가
Constraints.AddAngle(“구속 이름”, “검색기에 표현될 이름1“, “entityName1”, “검색기에 표현될 이름2“, “entityName2”, 90 deg) 6) Angle 구속 추가
3) i-Logic & 매개변수 연동
Parameter("전달하고자 하는 부품의 검색기 이름", "전달할 매개변수 이름") = 원본 매개변수 7) 매개변수 값 전달
--- Something NEW 何か新しいチカラを ---
※설계 자동화 예시 [스캔 기능 사용]
3) i-Logic & 매개변수 연동
--- Something NEW 何か新しいチカラを ---
※설계 자동화 예시 4) i-Logic & 매개변수 연동 실습
ⓐ
ⓑ
-. 최상위 어셈블리의 매개변수에서 [사용자 매개변수]를 생성. -. 매개변수를 전달 받을 부품 파일에도 같은 이름으로 [사용자 매개변수] 생성. -. 단위와 매개변수 유형 주의.
LM Slider.ipt
LM Rail.ipt
LM Guide.iam
사용자 매개변수 생성 위치
--- Something NEW 何か新しいチカラを ---
※설계 자동화 예시 4) i-Logic & 매개변수 연동 실습
-. 최상위 어셈블리의 매개변수에서 [사용자 매개변수]를 생성. -. 단위와 매개변수 유형 주의.
①
② Drag
--- Something NEW 何か新しいチカラを ---
※설계 자동화 예시 4) i-Logic & 매개변수 연동 실습
-. ⓐ [규칙] 탭에서 마우스 오른쪽 클릭 → ⓑ [규칙 추가] -. ⓒ iLogic Code 입력.
ⓐ
ⓑ
ⓒ
--- Something NEW 何か新しいチカラを ---
※설계 자동화 예시 4) i-Logic & 매개변수 연동 실습
--- Something NEW 何か新しいチカラを ---
※설계 자동화 예시 4) i-Logic & 매개변수 연동 실습
ⓐ
ⓑ
ⓒ
ⓓ
ⓔ
-. ⓒ 부품 추가 -. ⓓ 추가 된 부품 구속 추가 -. ⓔ 필요 없는 부품 삭제
--- Something NEW 何か新しいチカラを ---
※설계 자동화 예시 4) i-Logic & 매개변수 연동 실습
--- Something NEW 何か新しいチカラを ---
감사합니다.
슬라이드 번호 1 슬라이드 번호 2 슬라이드 번호 3 슬라이드 번호 4 슬라이드 번호 5 슬라이드 번호 6 슬라이드 번호 7 슬라이드 번호 8 슬라이드 번호 9 슬라이드 번호 10 슬라이드 번호 11 슬라이드 번호 12 슬라이드 번호 13 슬라이드 번호 14 슬라이드 번호 15 슬라이드 번호 16 슬라이드 번호 17 슬라이드 번호 18 슬라이드 번호 19 슬라이드 번호 20 슬라이드 번호 21 슬라이드 번호 22 슬라이드 번호 23 슬라이드 번호 24 슬라이드 번호 25 슬라이드 번호 26 슬라이드 번호 27 슬라이드 번호 28 슬라이드 번호 29 슬라이드 번호 30 슬라이드 번호 31 슬라이드 번호 32 슬라이드 번호 33 슬라이드 번호 34