RoboDK용곡선유틸리티(Curve Utilities) 애드인을사용하면사용자친화적인방식으로곡선을조작할수있습니다. 개별점(점의위치값및법선)을조작하거나, 곡선을필터링하는등의작업을수행할수있습니다. 이애드인은 RoboDK 내에서원시기하학적데이터를고정밀로봇공구경로로변환하도록설계된강력하고통합된툴킷입니다.
Curve Utilities 애드인은포인트클라우드조작을위한전용인터페이스를제공합니다. 이유틸리티를통해사용자는 2D 스케치를 3D 곡면에투영하거나, 다양한알고리즘을사용하여노이즈가많은경로를수학적으로매끄럽게보정하고, 가장효율적인로봇이동을위해여러곡선세그먼트의순서를재정렬하여사이클시간을단축하는등복잡한기하학적연산을수행할수있습니다. 또한, 중복된점을제거하고공구방향(법선)을보정하는고급정제필터를제공하여, 레이저절단, 디스펜싱또는디버링과같은작업중로봇이공작물에대해완벽한수직을유지하도록보장합니다.
라이브러리의 ‘애드인(Add-ins)’ 섹션에서 RoboDK Curve Utilities 애드인을찾을수있습니다.

Curve Utilities 애드인의메뉴바는곡선불러오기/저장, 곡선필터링, 변환등에필요한명령이포함된메인창으로구성되어있습니다.
1.'유틸리티'를선택합니다.
2.'Curve Utilities'를선택합니다.
3.'Curve Editor'를선택합니다(또는해당툴바동작을선택합니다).

CAD 경로, CSV 좌표파일및 SVG 벡터파일을가져오고내보내어로봇프로젝트데이터를관리하고, 번거로움없이경로를불러올수있습니다.

이메뉴는다음공구를활용하여곡선/점데이터의수명주기를관리합니다:
1.곡선 가져오기: 이도구를사용하면 CSV, SVG, DXF 등다양한형식의복잡한공구경로를가져올수있습니다. 가져올때시스템은자동으로구조를분석하여파일의내부레이어또는그룹을기반으로편집기트리내에개별곡선항목을생성합니다.
2.곡선 내보내기: 정교하게다듬은작업결과를저장할때사용합니다. 이기능은좌표및법선벡터를포함한모든현재기하학적데이터를표준화된 CSV 또는 TXT 파일로추출합니다. 이는버전관리나서로다른 RoboDK 스테이션간경로전송에필수적입니다.
3.점 가져오기: 전체곡선을가져오는것과는달리, 이기능을사용하면기존선택영역에독립적인점을삽입할수있습니다. 주로공구경로의빈공간을수동으로 "메우거나" 원본 CAD 파일에없던특정접근/후퇴점을추가하는데사용됩니다. 점의또다른용도로는드릴링프로젝트에서드릴링할구멍의위치가좌표점으로표시되는경우가있습니다.
4.점 내보내기: 선택한특정좌표의원시데이터를덤프합니다. 문서화, 외부스프레드시트분석또는고급스크립트프로그래밍에사용할특정타겟값을추출해야할때매우유용합니다.
5.모든 변경 사항 되돌리기: 전체적인 “실행취소” 역할을하는안전기능입니다. 이기능을사용하면세션시작시점의곡선데이터를다시불러오며, 마지막저장또는가져오기이후편집기에서수행된모든필터, 오프셋및변환을취소합니다.
6.종료: Curve Utilities 세션을안전하게종료하고메인 3D 시뮬레이션환경으로돌아갑니다.
로봇경로내의개별좌표행을절단, 복사, 붙여넣기및삭제하는등표준포인트클라우드편집작업을수행합니다.

이메뉴는고밀도좌표데이터를처리하기위한일반적인테이블공구를제공합니다:
1.잘라내기: 선택한점이나곡선을목록에서제거하면서클립보드에저장합니다. 이기능은동일한프로젝트내에서한경로의세그먼트를다른경로로 “재할당”하는데자주사용됩니다.
2.복사: 강조표시된기하데이터를클립보드에복사합니다. 이기능은소스파일을다시가져오지않고도부품의여러위치에패턴(예: 볼트구멍원)을복제하는데유용합니다.
3.붙여넣기: 클립보드의데이터를현재커서위치에삽입합니다. 곡선이선택된경우, 점들이곡선끝에추가되며, 특정행이선택된경우, 점들이바로아래에삽입됩니다.
4.삭제: 편집기에서선택한데이터를영구적으로제거합니다. 이는품질이낮은 CAD 내보내기파일의시작이나끝부분에자주나타나는 "불필요한" 점을수동으로정리하는데필수적입니다.
5.새 점 추가: 좌표 (0, 0, 0)을가진새로운점행을수동으로생성합니다. 이를통해정확한물리적측정값은알려져있지만 3D 모델에반영되지않은경우, 사용자가특정좌표를삽입할수있습니다.
특정곡선이나점을강조표시하고순서를재조정하여로봇의실행순서를정의함으로써워크플로를신속하게구성할수있습니다.

이러한기능을사용하면데이터선택을쉽게제어할수있으며, 이는필터나변환을적용하기전에매우중요합니다:
1.모두 선택: 현재세션에로드된모든점및곡선객체를강조표시합니다. 프로젝트전체에 XYZ 오프셋과같은전역변환을적용해야할때이기능을사용합니다.
2.곡선 선택: 트리에서 “곡선(Curve)” 컨테이너만선택하는필터입니다. 개별점이아닌전체경로세그먼트를하나의단위로이동하거나정렬할때유용합니다.
3.점 선택: 테이블내의 “점” 행만선택하는필터입니다. 좌표목록에만적용되는스무딩또는리샘플링알고리즘을적용할때주로사용됩니다.
4.위로 이동: 선택한항목을목록에서한칸위로이동시킵니다. 이는로봇의실행순서를직접변경하여, 프로그램순서에서해당특정점이나세그먼트를더일찍방문하도록합니다.
5.아래로 이동: 선택한항목을한칸아래로이동시킵니다. 이는일반적으로로봇이부품을안전하게통과할수있도록리트랙트지점을곡선의맨끝으로이동시키는데사용됩니다.
IJK 방향열을전환하고, 데이터트리를확장하며, 경로시각화를개선하기위해점간거리를계산하여작업공간을조정하십시오.

이메뉴는아래에나열된대로데이터테이블과트리의시각적밀도를관리하는공구를제공합니다:
1.모두 펼치기: 트리구조를완전히펼쳐모든곡선내의모든점을표시합니다. 심층적인검사에유용하지만, 고해상도경로를다룰때는목록이매우길어질수있습니다.
2.모두 접기: 모든점을상위곡선폴더로다시접어넣습니다. UI가복잡해지는것을방지하므로정렬이나병합과같은정리작업에권장되는보기방식입니다.
3.IJK 열 표시: 방향벡터의표시여부를전환합니다. 애플리케이션이단순한 3축작업(예: 평면워터젯절단)인경우, 인터페이스를단순화하기위해이를숨길수있습니다.
4.점 간 거리 표시: 각점사이의간격을밀리미터단위로계산하여표시합니다. 이는로봇이 “뛰어오르거나” 속도오류를유발할수있는경로의간격을찾는데매우유용한진단공구입니다.
표면투영, 법선반전, 경로오프셋과같은고급기하학적변환을적용하여공구경로를 3D 공작물형상과정렬합니다.

이메뉴에는로봇과공작물간의관계를근본적으로변경하는기하학적논리가포함되어있습니다. 이러한변환을수행하는공구로는다음이있습니다:
1.곡선 병합: 여러개의개별곡선세그먼트를하나의연속적인경로로연결합니다. 이는로봇이여러 CAD 레이어에걸쳐일정한이송속도를유지해야하는 CNC 방식의작업에필수적입니다.
2.곡선 역방향 전환: 점목록을끝에서시작점으로뒤집습니다. 이는로봇이원하는가공방향에비해 “뒤로” 이동하는경로를수정하는가장빠른방법입니다.
3.곡선을 점으로 변환: 곡선의 “연결고리”를끊어독립적인타겟목록으로변환합니다. 선을따라가는대신경로의특정노드에서픽앤플레이스(Pick-and-Place) 작업을수행하려는경우에유용합니다.
4.점을 곡선으로 변환: 위기능의역과정으로, 개별점을사용하여그사이를연결하는로봇경로를그립니다. 무작위측정점목록을가져온후이를이동가능한경로로변환할때이기능을사용합니다.
5.곡선 점 오프셋(상대): 선택한축의조합에따라곡선점에고정된상대적평행이동을적용합니다. 예를들어, X축과 Y축에 50mm를더하면전체경로가대각선으로이동합니다.
6.곡선 점 오프셋(법선 방향): 각점의개별방향에따라점들을부품표면에서멀어지거나가까워지도록평행이동을수행하는복잡한변환입니다.
7.곡선 점 오프셋(접선): 이동방향을따라점을이동시킵니다. 이는절단의 “리드인” 또는 “리드아웃”에자주사용되며, 선에서벗어나지않으면서경로를앞뒤로약간연장합니다.
8.곡선 투영: 2D 또는 3D 점을선택한객체의메쉬에투영합니다. 이를통해 CAD 경로가약간어긋나더라도시뮬레이션에서로봇이부품표면에물리적으로접촉하도록보장합니다.
9.점 일괄 편집(절대값): (상위참조프레임을기준으로) 특정절대값을강제적용할수있는 “오버라이드” 공구입니다. 예를들어, 모든점의 X 값을 100.0으로설정할수있습니다. 이기능은위험할수있지만, 불규칙한경로를특정평면에정렬하는데매우유용합니다.
10.법선 반전: 공구방향(IJK)을 180도회전합니다.
11.법선 평균화: 인접한점들의방향을비교하여급격한각도변화를부드럽게다듬습니다. 이를통해복잡한곡선동작중에로봇손목이 “뒤집히거나” 갑작스럽게움직이는것을방지할수있습니다.
12.법선 설정(절대): 선택한모든점이단일방향(예: [0, 0, 1])을가리키도록강제합니다. 이기능은공구방향이절대변하지않는간단한 3축평판가공작업에적합합니다.
13.법선 설정 (상대): 기존법선에회전(예: Y축을중심으로 +15도)을적용합니다. 이를통해툴패스를 “기울여” 부피가큰로봇스핀들에대한여유공간을확보할수있습니다.
14.법선 설정 (접선): 이동방향을기준으로법선벡터를계산합니다. 이기능은블레이드가항상경로를따라전방을향해야하는 “나이프절단” 작업에사용됩니다.
경로평활화알고리즘, 중복점제거및선단순화를사용하여모션품질을향상시켜, 로봇이진동없이부드럽게이동하도록보장합니다.

이메뉴는산업용수준의모션을위해경로를개선하는데사용되는고급수학적알고리즘으로구성되어있으며, 다음과같은기능을제공합니다:
1.중복 점 제거: 실질적으로동일한연속된점을삭제합니다.
2.직선 단순화: 세그먼트를분석하여완벽하게직선상에위치한중복점을제거합니다. 세그먼트가직선인경우 1,000개의점으로구성된경로를 2개점(시작/종료)으로줄여프로그램크기를대폭축소합니다.
3.곡선 재샘플링(고정 간격): 고정된간격으로새로운점을추가하여모든점사이의거리를특정값(예: 정확히 5.0mm)으로강제설정합니다. 이는균일한비드를형성하기위해일정한속도/거리관계가필요한접착제또는실란트디스펜싱작업에매우중요합니다.
4.곡선 재샘플링(계수 적용): 세그먼트수를특정배수로증가시킵니다(예: 2를입력하면곡선의각세그먼트가 2개로나뉘며, 연속된점쌍사이에추가점이삽입됩니다).
5.CCMA 스무딩(정확도 중점): 이동평균을사용하여경로의 “지터”를완화합니다. 인근점들의평균을산출하므로, 원본좌표에매우가깝게유지하면서노이즈를제거하고자하는 3D 스캔데이터에탁월합니다.
6.B-스플라인 스무딩 (동작 중심): 점들을통과하는고차다항식스플라인을생성합니다.
7.거리별 곡선 정렬: 곡선세그먼트를재정렬하여로봇이항상가장가까운다음경로시작점으로이동하도록함으로써, 공중이동에소요되는시간을최소화합니다.
8.불연속 곡선 분할/그룹화: 경로에서물리적으로큰간격을스캔하여이를별도의 RoboDK 항목으로자동분할합니다. 이를통해 “섬” 형태의경로(로고의글자등)를별도의작업으로처리할수있습니다.
곡선을로봇타겟으로변환하고시뮬레이션을위해외부 DXF 또는프로그램파일을가져와자동화설정을마무리합니다.

이메뉴에는편집기에서로봇으로작업을옮기기위한통합공구가포함되어있습니다:
1.타깃으로 변환: 마지막단계입니다. 정제된수학적데이터를기반으로 RoboDK 트리내에물리적 “타겟”을생성하여, “곡선추적프로젝트” 또는 “로봇프로그램”을실행할준비를완료합니다.
2.프로그램 가져오기: 고급리버스엔지니어링공구입니다. 기존로봇프로그램(스크립트나 .src 파일등)에서좌표데이터를추출하여편집기로가져오므로, 기존경로를부드럽게다듬거나필터링할수있습니다.
3.SVG 가져오기: 전용벡터아트임포터입니다. 로고나텍스트의베지어곡선을로봇경로로평행이동하므로, 레이저조각이나장식용도장작업에주로사용되는공구입니다.
4.DXF 가져오기: 표준엔지니어링인터페이스입니다. CAD 드로잉에서선, 호, 폴리라인을가져오며, 설계자가의도한정확한축척과치수를유지합니다.
Curve Utilities 애드인에는메뉴모음바로아래에자주사용하는기능에쉽게접근할수있도록몇가지바로가기버튼이포함되어있습니다.

이러한액션버튼에는다음이포함됩니다:
1.위로이동
2.아래로이동
3.곡선반전
4.곡선병합
5.중복제거
6.표면에투영
7.복사
8.붙여넣기
9.삭제