KR101160144B1 - 선체 블록내부 작업경로 생성 장치 및 방법 - Google Patents
선체 블록내부 작업경로 생성 장치 및 방법 Download PDFInfo
- Publication number
- KR101160144B1 KR101160144B1 KR1020100084632A KR20100084632A KR101160144B1 KR 101160144 B1 KR101160144 B1 KR 101160144B1 KR 1020100084632 A KR1020100084632 A KR 1020100084632A KR 20100084632 A KR20100084632 A KR 20100084632A KR 101160144 B1 KR101160144 B1 KR 101160144B1
- Authority
- KR
- South Korea
- Prior art keywords
- robot
- data
- collision
- work path
- work
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
- G06Q10/047—Optimisation of routes or paths, e.g. travelling salesman problem
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- General Engineering & Computer Science (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Computer Hardware Design (AREA)
- Computational Mathematics (AREA)
- Databases & Information Systems (AREA)
- Pure & Applied Mathematics (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- Mathematical Optimization (AREA)
- Mathematical Analysis (AREA)
- Development Economics (AREA)
- Software Systems (AREA)
- Game Theory and Decision Science (AREA)
- Algebra (AREA)
- Entrepreneurship & Innovation (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Manipulator (AREA)
Abstract
선체 블록내부 작업경로 생성 장치 및 방법이 개시된다.
본 발명의 일 실시예에 따른 선체 내부의 블록을 구성하는 부재 데이터가 저장되는 부재 데이터베이스와, 상기 선체 내부의 블록에서의 작업을 수행할 로봇에 대한 로봇 데이터가 저장되는 로봇 데이터베이스와, 상기 부재 데이터 및 로봇 데이터를 로딩하여 전처리하는 전처리부와, 상기 전처리된 부재 데이터와 전처리된 로봇 데이터를 이용하여 비충돌 로봇 이동 가능 영역을 생성하고, 생성되는 상기 비충돌 로봇 이동 가능 영역에 대한 작업 단면을 생성하고, 상기 생성된 상기 작업 단면상의 작업경로를 생성하는 면별 작업경로 생성부와, 상기 면별 작업경로 생성부를 통해 생성된 상기 작업경로를 기반으로 전체 작업경로를 쉘별로 스케줄링(scheduling)하는 쉘별 작업경로 생성부를 포함한다.
본 발명의 일 실시예에 따른 선체 내부의 블록을 구성하는 부재 데이터가 저장되는 부재 데이터베이스와, 상기 선체 내부의 블록에서의 작업을 수행할 로봇에 대한 로봇 데이터가 저장되는 로봇 데이터베이스와, 상기 부재 데이터 및 로봇 데이터를 로딩하여 전처리하는 전처리부와, 상기 전처리된 부재 데이터와 전처리된 로봇 데이터를 이용하여 비충돌 로봇 이동 가능 영역을 생성하고, 생성되는 상기 비충돌 로봇 이동 가능 영역에 대한 작업 단면을 생성하고, 상기 생성된 상기 작업 단면상의 작업경로를 생성하는 면별 작업경로 생성부와, 상기 면별 작업경로 생성부를 통해 생성된 상기 작업경로를 기반으로 전체 작업경로를 쉘별로 스케줄링(scheduling)하는 쉘별 작업경로 생성부를 포함한다.
Description
본 발명은 로봇의 선체 블록내부의 작업 환경을 고려한 것으로, 특히 선체 블록내부 작업경로 생성 기술에 관한 것이다.
일반적으로, 선박은 일반 건축물보다 그 규모가 훨씬 크고, 건조 공정도 복잡하며, 결과적으로 수많은 부재와 기자재를 조립하여 하나의 움직일 수 있는 제품을 만드는 과정을 거친다. 선박을 건조하는 과정은, 크게 선각공사와 의장공사로 구분되며, 의장공사에는 배관 및 배선 작업, 도장 작업, 건조 작업 등이 포함될 수 있다.
특히, 건조 작업에서는, 선박의 선체를 이루는 블록에 대한 작업이 지속적으로 필요하며, 이러한 선체 블록에 대한 작업에는 일반적으로 많은 인력이 필요하다. 따라서, 노동 집약적인 선체 블록 작업의 자동화 요구는 지속적으로 있어 왔으며, 이를 위하여 용접, 도장, 및 검사 등을 수행하는 각종 자동화 장비가 개발되고 있다.
다만, 선체 블록내부에는 선체의 구조적인 강성을 보강하기 위하여 복잡한 구조의 부재들, 예를 들어 여러 개의 론지(longe)가 선체의 블록 벽면에 형성되어 있는데, 이러한 부재들은 선박의 건조 작업 시에 방해요소로 작용하게 된다.
따라서, 선박의 건조 과정에서는 선체 블록내부의 복잡한 구조물들을 사람이 피해가면서 작업을 하고 있는 실정이며, 자동화 장비를 이용하는 경우에도 매번 자동화 장비를 수동으로 이동시키면서 설치한 후에 작업을 하고 있는 실정이다.
이에 본 발명의 실시예에서는, 선체 내부의 블록 및 부재를 파악하여 로봇의 충돌이 배제되는 작업경로를 생성함으로써, 정확하고 편리한 선체 블록내부 작업 환경을 제공할 수 있는 선체 블록내부 작업경로 생성 장치 및 방법을 제안하고자 한다.
본 발명의 일 측면에 따르면, 선체 내부의 블록을 구성하는 부재 데이터가 저장되는 부재 데이터베이스와, 상기 선체 내부의 블록에서의 작업을 수행할 로봇에 대한 로봇 데이터가 저장되는 로봇 데이터베이스와, 상기 부재 데이터 및 로봇 데이터를 로딩하여 전처리하는 전처리부와, 상기 전처리된 부재 데이터와 전처리된 로봇 데이터를 이용하여 비충돌 로봇 이동 가능 영역을 생성하고, 생성되는 상기 비충돌 로봇 이동 가능 영역에 대한 작업 단면을 생성하고, 상기 생성된 상기 작업 단면상의 작업경로를 생성하는 면별 작업경로 생성부와, 상기 면별 작업경로 생성부를 통해 생성된 상기 작업경로를 기반으로 전체 작업경로를 쉘별로 스케줄링(scheduling)하는 쉘별 작업경로 생성부를 포함하는 선체 블록내부 작업경로 생성 장치가 제공된다.
또한, 상기 면별 작업 경로 생성부는, 상기 전처리된 부재 데이터와 상기 전처리된 로봇 데이터간의 비충돌 영역을 생성하고, 상기 생성된 비충돌 영역과 기 설정된 로봇 이동 가능 영역을 참조로 상기 비충돌 로봇 이동 가능 영역을 생성할 수 있다.
또한, 상기 면별 작업 경로 생성부는 수학식 CF * M에 의하여 상기 비충돌 로봇 이동 가능 영역을 생성할 수 있다.
여기서, CF는 비충돌 영역, M은 기 설정된 로봇 이동 가능 영역이며, 연산자 *는 공통영역을 의미할 수 있다.
또한, 상기 선체 블록내부 작업경로 생성 장치는, 상기 쉘별 작업경로 생성부를 통해 생성된 상기 전체 작업경로를 검증하는 후처리부를 더 포함할 수 있다.
본 발명의 다른 측면에 의하면, 선체 내부의 블록을 구성하는 부재 데이터와, 상기 선체 내부의 블록에서의 작업을 수행할 로봇에 대한 로봇 데이터를 로딩하여 전처리하는 과정과, 상기 전처리하는 과정에 의해 전처리된 부재 데이터와 전처리된 로봇 데이터 간의 비충돌 영역을 생성하는 과정과, 생성되는 상기 비충돌 영역과 기 설정된 로봇 이동 가능 영역을 참조로 비충돌 로봇 이동 가능 영역을 생성하는 과정과, 상기 선체 내부의 블록에 대한 작업 단면을 생성한 후 생성되는 상기 작업 단면 상의 작업경로를 생성하는 과정과, 생성되는 상기 작업 단면 상의 작업경로를 조합하여 전체 작업경로를 스케줄링하는 과정을 포함하는 선체 블록내부 작업경로 생성 방법이 제공된다.
또한, 상기 비충돌 영역은, 수학식 U-B (-R)에 의해 구현되며, 상기 U는 상기 부재 데이터, 상기 B는 상기 전처리된 부재 데이터, 상기 R은 상기 전처리된 로봇 데이터, 상기 은 민코브스키 연산(Minkowski Sum)을 각각 나타낸다.
또한, 상기 비충돌 로봇 이동 가능 영역은, 수학식 CF * M에 의해 구현되며, 상기 CF는 상기 비충돌 영역, 상기 M은 상기 기 설정된 로봇 이동 가능 영역이다.
또한, 상기 선체 블록내부 작업경로 생성 방법은, 스케줄링되는 상기 전체 작업경로를 검증하는 과정을 더 포함할 수 있다.
본 발명의 실시예에 의하면, 선체 내부의 블록 및 부재를 파악하여 로봇의 충돌이 배제되는 선체 내부의 작업경로를 생성함으로써, 보다 정확하고 편리한 선체 블록내부 작업 환경을 제공할 수 있다.
도 1은 본 발명의 실시예에 따른 선체 블록내부 작업경로 생성 장치에 대한 블록 구성도,
도 2는 본 발명의 실시예에 따른 선체 블록내부 작업경로 생성 방법을 설명하는 흐름도,
도 3a는 선체 블록내부의 부재 데이터를 예시한 도면,
도 3b는 도 3a의 부재 데이터를 전처리 한 결과를 예시한 도면,
도 4a는 로봇 데이터를 예시한 도면,
도 4b는 도 4a의 로봇 데이터를 전처리 한 결과를 예시한 도면,
도 5는 도 3a, 도 3b, 도 4b에 의해 생성된 부재 데이터와 로봇 데이터 간의 비충돌 영역을 예시한 도면,
도 6a는 로봇 이동 가능 영역 데이터의 로딩 결과를 예시한 도면,
도 6b는 도 6a의 로봇 이동 가능 영역 데이터에 따라 생성된 3차원 로봇 이동 가능 영역을 예시한 도면,
도 7은 도 5와 도 6b에 의해 생성된 비충돌 로봇 이동 가능 영역을 예시한 도면,
도 8은 본 발명의 실시예에 따라 생성된 작업 단면을 예시한 도면,
도 9는 도 8의 작업 단면 상의 작업경로를 생성한 경우를 예시한 도면.
도 2는 본 발명의 실시예에 따른 선체 블록내부 작업경로 생성 방법을 설명하는 흐름도,
도 3a는 선체 블록내부의 부재 데이터를 예시한 도면,
도 3b는 도 3a의 부재 데이터를 전처리 한 결과를 예시한 도면,
도 4a는 로봇 데이터를 예시한 도면,
도 4b는 도 4a의 로봇 데이터를 전처리 한 결과를 예시한 도면,
도 5는 도 3a, 도 3b, 도 4b에 의해 생성된 부재 데이터와 로봇 데이터 간의 비충돌 영역을 예시한 도면,
도 6a는 로봇 이동 가능 영역 데이터의 로딩 결과를 예시한 도면,
도 6b는 도 6a의 로봇 이동 가능 영역 데이터에 따라 생성된 3차원 로봇 이동 가능 영역을 예시한 도면,
도 7은 도 5와 도 6b에 의해 생성된 비충돌 로봇 이동 가능 영역을 예시한 도면,
도 8은 본 발명의 실시예에 따라 생성된 작업 단면을 예시한 도면,
도 9는 도 8의 작업 단면 상의 작업경로를 생성한 경우를 예시한 도면.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 도면부호는 동일 구성 요소를 지칭한다.
본 발명의 실시예들을 설명함에 있어서 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 발명의 실시예에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
본 발명의 실시예는, 것으로, 이러한 기술 사상으로부터 본 발명의 목적으로 하는 바를 용이하게 달성할 수 있을 것이다.
이하, 첨부한 도면을 참조하여 본 발명의 실시예에 대해 상세히 설명하기로 한다.
도 1은 본 발명의 실시예에 따른 선체 블록내부 작업경로 생성 장치에 대한 구성 블록도로서, 부재 DB(Data-Base)(100), 로봇 DB(102), 전처리부(104), 면별 작업경로 생성부(106), 쉘(shell)별 작업경로 생성부(108), 후처리부(110) 등을 포함할 수 있다.
도 1에 도시한 바와 같이, 부재 DB(100)는 선체 내부의 블록을 구성하는 다수의 부재 데이터들을 저장하고 있으며, 후술하는 전처리부(104)를 통해 임의의 부재 데이터가 로딩(loading)될 수 있다. 이들 부재 데이터들은 형상 별 타입(type)을 갖는 곡면 형상의 요소들의 집합으로 저장될 수 있는데, 예를 들어, 전자도면 파일 형태로 존재할 수 있다.
로봇 DB(102)는 선체 내부의 블록에서의 작업, 예를 들어 건조 작업을 수행할 로봇들에 대한 로봇 데이터들 저장하고 있으며, 전처리부(104)를 통해 임의의 로봇 데이터가 로딩될 수 있다. 이들 로봇 데이터들은 상술한 부재 데이터와 마찬가지로 형상 별 타입을 갖는 곡면 형상의 요소들의 집합으로 저장될 수 있으며, 전자도면 파일 형태로 존재할 수 있다.
전처리부(104)는 상술한 부재 DB(100)의 부재 데이터와, 로봇 DB(102)의 로봇 데이터를 로딩하여 전처리하는 역할을 수행한다. 이러한 전처리를 통해, 임의의 부재 데이터 및/또는 로봇 데이터의 형태가 단순화될 수 있는데, 예컨대 전처리를 통해 부재 데이터 및/또는 로봇 데이터가 직사각형 형태로 단순화될 수 있다. 다만, 로봇 데이터는, 작업 환경에 따라 로봇의 자세가 달라질 수 있는 바, 단순화된 형태를 각 작업 자세 별로 상이하게 생성할 수 있으며, 이때의 로봇의 형상은 직사각형 형태에 한정되는 것이 아니라, 가장 적은 볼륨(volume)으로 감쌀 수 있는 조건이라면 어떠한 형태든지 구현 가능함을 주지할 필요가 있다.
이때, 전처리부(104)의 전처리 작업에는, 예를 들어 AABB(Axis-Aligned Bounding Box) 또는 OBB(Oriented Bounding Box) 등의 알고리즘들이 포함될 수 있으며, 이들 알고리즘은 본 발명의 기술 분야에서 통상의 지식을 가진 자라면 용이하게 알 수 있는 바, 구체적인 설명은 생략하기로 한다.
면별 작업경로 생성부(106)는 전처리부(104)를 통해 단순화된 부재 데이터와 로봇 데이터를 이용하여 충돌 배제된 로봇 이동 가능 영역을 생성하고, 생성된 로봇 이동 가능 영역에 대한 작업 단면을 생성한 후 생성된 작업 단면상의 작업경로를 생성하는 역할을 수행할 수 있다.
쉘별 작업경로 생성부(108)는 면별 작업경로 생성부(106)를 통해 생성된 작업 단면상의 작업경로를 기반으로 전체 작업경로를 쉘별로 스케줄링(scheduling)하는 역할을 수행할 수 있다.
후처리부(110)는 쉘별 작업경로 생성부(108)를 통해 생성된 전체 작업경로를 검증하는 역할을 수행할 수 있다. 예를 들어, 후처리부(110)는 작업 시간, 환경과의 충돌, 건조 품질 등의 관점에서 전체 작업경로를 검증할 수 있다. 구체적으로, 후처리부(110)는 전체 작업경로의 작업 시간이 정해진 시간을 초과하였는지, 부재 DB(100)에 존재하지 않는 부재 데이터로 인해 환경과의 충돌 우려가 발생하였는지, 건조 품질을 위해 일부 영역의 간격을 조밀하게 할 필요가 있는지, 경로 생성 작업을 재 실시하지 않고 현재 생성된 경로를 인위적으로 수정할 필요가 있는지 등을 검증할 수 있다.
이하, 상술한 구성과 함께, 본 발명의 실시예에 따른 선체 블록내부 작업경로 생성 방법을, 첨부한 도 2 내지 도 9를 참조하여 보다 구체적으로 설명하기로 한다.
먼저, 도 2는 본 발명의 실시예에 따른 선체 블록내부 작업경로 생성 방법을 설명하는 흐름도이고, 도 3a는 선체 블록내부의 부재 데이터를 예시한 도면이며, 도 3b는 도 3a의 부재 데이터를 전처리 한 결과를 예시한 도면이고, 도 4a는 로봇 데이터를 예시한 도면이며, 도 4b는 도 4a의 로봇 데이터를 전처리 한 결과를 예시한 도면이고, 도 5는 도 3a, 도 3b, 도 4b에 의해 생성된 부재 데이터와 로봇 데이터 간의 비충돌 영역을 예시한 도면이며, 도 6a는 로봇 이동 가능 영역 데이터의 로딩 결과를 예시한 도면이고, 도 6b는 도 6a의 로봇 이동 가능 영역 데이터에 따라 생성된 3차원 로봇 이동 가능 영역을 예시한 도면이며, 도 7은 도 5와 도 6b에 의해 생성된 비충돌 로봇 이동 가능 영역을 예시한 도면이고, 도 8은 본 발명의 실시예에 따라 생성된 작업 단면을 예시한 도면이며, 도 9는 도 8의 작업 단면 상의 작업경로를 생성한 경우를 예시한 도면이다.
앞서 도 1을 참조하여 설명한, 본 발명의 실시예에 따른 선체 블록내부 작업경로 생성 장치의 구성은 일 례에 불과하며, 다수개의 구성부로 더 세분화되거나, 역으로 하나의 구성부로 통합될 수 있는 등, 그 명칭에 구애 받지 아니하고, 다양하게 구성될 수 있다. 따라서, 이하, 도 2를 참조하여 선체 블록내부 작업경로 생성 장치가 선체 블록내부의 작업경로를 생성하는 과정을 설명함에 있어서, 본 발명의 실시예에 따른 선체 블록내부 작업경로 생성 장치가 주체인 것으로 설명한다.
도 2를 참조하면, 선체 블록내부 작업경로 생성 장치는 부재 DB(100)에서 선체 내부의 블록에 대한 부재 데이터를 로딩하고, 로딩되는 부재 데이터를 전처리한다(S200). 도 3a는 부재 DB(100)로부터 로딩되는 부재 데이터를 예시한 것이며, 도 3b는 도 3a의 부재 데이터를 전처리한 결과를 예시한 것이다. 이러한 전처리를 통해 해당 부재 데이터의 형태가 단순화되었음을 알 수 있다.
또한, 선체 블록내부 작업경로 생성 장치는 로봇 DB(102)에서 로봇 데이터를 로딩하고, 로딩되는 로봇 데이터를 전처리한다(S202). 도 4a는 선체 블록내부 작업경로 생성 장치가 그 내부의 저장공간 중 로봇 DB(102)로부터 로딩되는 로봇 데이터를 예시한 것이며, 도 4b는 도 4a의 로봇 데이터를 전처리한 결과를 예시한 것이다. 이러한 전처리를 통해 해당 로봇 데이터의 형태가 단순화되었음을 알 수 있다.
선체 블록내부 작업경로 생성 장치는 전처리된 부재 데이터 및 로봇 데이터에 기초하여, 전처리된 부재 데이터와 로봇 데이터 간의 비충돌 영역을 생성할 수 있다(S204).
로봇이 작업 도중 임의의 환경, 예컨대 부재와 충돌하는 일이 있어서는 안되므로, 충돌 회피 방안이 마련되어야 하는데, 작업 도중이라면 별도의 센서(도시 생략됨)를 통해 환경을 감지하여 충돌을 회피할 수 있을 것이다. 본 발명의 실시예에서는 작업경로에서부터 환경과의 충돌 회피를 방지하는 기술을 제시하고자 하며, 이를 위해서는 블록과 로봇 간의 비충돌 영역을 구하고, 그 안에서 작업경로를 생성할 필요가 있다. 비충돌 영역이라 함은, 로봇의 중심이 부재와 충돌하지 않고 위치할 수 있는 영역을 의미한다.
이하에서는, 상술한 비충돌 영역의 생성을 위한 과정을 구체적으로 설명하기로 한다.
먼저, 비충돌 영역을 생성하는데 필요한 각 영역은 정점의 집합으로 간주하며, 이러한 집합은 다음과 같은 연산들로 정의될 수 있다.
-A = {-x | x∈A}
A+B = {x | x∈A or x∈B}
A*B = {x | x∈A and x∈B}
U = {x | x∈R3}
∑Ai = A1 + A2 + ... + An
∏Ai = A1* A2 * ... * An
즉, A+B는 두 영역의 합, A*B는 공통 영역이라 할 수 있다. 연산은 민코브스키 연산(Minkowski Sum)이라 불리는데, 두 다각형, 혹은 다각 입방체를 한 다각형을 기준으로 합한 영역이다. 비충돌 영역 계산에 민코브스키 연산을 이용하는데, A (-B)가 생성하는 영역은 A와 B가 충돌하는 영역, 따라서 U - A (-B)가 비충돌 영역이 될 수 있다.
이러한 연산들을 이용하여 본 발명의 실시예에 따른 부재 데이터와 로봇 데이터 간의 비충돌 영역은 다음 [수학식 1]과 같이 정의될 수 있다.
이때, 블록은 부재 데이터가 직육면체를 감싸는 형태이므로 비충돌 영역도 내부와 외부로 구분될 수 있게 된다. 다음 [수학식 2]는 로봇의 작업 영역이 블록 내부인 경우를 고려한 부재 데이터와 로봇 데이터 간의 비충돌 영역을 정의한 것이다.
이때, [수학식 1] 및 [수학식 2]의 각각의 기호들은 다음과 같이 정의될 수 있다.
Bi: 단순화된 부재 데이터
B: 단순화된 부재 영역, B = ∑Bi
C: 블록을 단순화한 직육면체
Ri: 단순화된 로봇 데이터
R: 단순화된 로봇 영역, R = ∑Ri
CF: 블록 내부의 로봇 데이터와 부재 데이터 간의 비충돌 영역
[수학식 1]을 참조로, 도 5에서 부재 데이터를 (a), 전처리에 의해 단순화된 부재 데이터를 (b), 전처리에 의해 단순화된 로봇 데이터를 (c)라 가정했을 때, 비충돌 충돌 영역은 (d)와 같이 정의될 수 있다.
민코브스키 연산은 다각형/다각 입방체에 대해 오목형 보다 계산 속도가 빠르다고 알려져 있다. 따라서, B (-R)을 직접 계산하는 대신, (∑Bi) (∑(-Ri))를 계산하여 계산 속도를 향상 시킬 수 있다.
한편, 선체 블록내부 작업경로 생성 장치는 로봇의 이동 가능 영역을 생성할 수 있다(S206). 도 6a는 로봇 이동 가능 영역 데이터의 로딩 결과를 예시한 도면이고, 도 6b는 도 6a의 로봇 이동 가능 영역 데이터에 따라 생성된 3차원 로봇 이동 가능 영역을 예시한 도면이다. 로봇이 블록 내부에서 이동할 수 있는 영역은 사전에 정의되어 있는 것으로 간주한다. 이동 가능 영역은 테스트를 통해 구할 수도 있고, 해석을 통해 구할 수도 있겠으나 그 방법은 고려하지 않기로 한다. 다만, 본 과정(S206)에서는 영역을 의미하는 데이터를 알고리즘에서 사용하는 자료 구조로 변환하는 일만을 한다. 이하의 설명에서는, 로봇 이동 가능 영역을 M으로 정의하기로 한다.
이후, 선체 블록내부 작업경로 생성 장치는 생성된 M을 이용하여 충돌이 배제된 비충돌 로봇 이동 가능 영역인 W를 생성할 수 있다(S208). 비충돌 로봇 이동 가능 영역(W)은, 도 7에 예시한 바와 같이, 로봇과 부재 간의 비충돌 가능 영역과 M을 통해 구할 수 있으며, 이는 다음 [수학식 3]과 같이 예시될 수 있다.
비충돌 로봇 이동 가능 영역이 생성되면, 선체 블록내부 작업경로 생성 장치는 도 8에 도시한 바와 같이 작업 단면을 생성할 수 있다(S210). 로봇은 블록의 면과 일정한 거리를 유지한 채 블록의 면을 순회하면서 평면 상에서 건조 작업 등을 수행할 수 있는데, 여기서 로봇이 블록과 유지해야 할 거리는 테스트를 통해 사전 설정될 수 있다. 작업 단면을 구하기 위해서는 우선 블록의 내부 공간을 형성하는 육면체를 구해야 한다. 예를 들어, 블록은 바닥과 천장을 형성하는 베이스 플레이트, 선수미 방향의 플로어 플레이트, 좌우현 방향의 거더 플레이트로 구성될 수 있으므로, 각 타입의 부재 중 내부면을 형성하는 곡면을 조합하면 블록의 내부 면을 구성하는 육면체를 구할 수 있다. 작업해야 할 면에서 내부방향으로 설정 값만큼 이동된 단면이 로봇이 작업할 단면(이하, F라 함)이 된다. 그러나, 로봇의 이동 가능 여부와 부재와 충돌을 고려해야 하기 때문에 F와 과정(S208)에서 구한 W와 교차되는 영역이 최종 작업 단면이 될 수 있다. 작업 단면은 하나의 평면 상에서 오목한 다각형 형상을 지닐 수 있다.
이후, 선체 블록내부 작업경로 생성 장치는 과정(S210)에서 생성된 작업 단면을 이용하여 도 9에 도시한 바와 같은 작업 단면 상의 작업경로를 생성할 수 있다(S212). 즉, 작업 단면이 구해지면 단면 상의 다각형 내부에서 작업경로를 생성해야 하는데, 작업경로는 예를 들어, [시작 위치, 끝 위치, 발열량 지수]의 리스트 형식으로 구성될 수 있다. 물론, 작업경로가 로봇 운용을 위한 인터페이스 역할을 하므로 로봇 운영과 관련된 값들이 추가적으로 설정될 수 있으며, 이에 대해서는 구체적인 설명은 생략하기로 한다.
이하, 건조 작업을 위해 로봇을 운용하는 것을 예로 들어서 설명한다.
균일한 건조 품질을 위해서는 작업 면을 균일하게 스캔(scan)해야 하므로 지그재그 형태가 될 수 있다. 지그재그 형태 이동 시, 라인 간의 거리도 건조 품질에 영향을 미칠 수 있는데, 이는 사전 테스트를 통해 설정값으로 설정될 수 있다.
발열량 지수란 로봇이 단위 시간당 방출해야 할 열량을 의미하는데, 로봇의 이동 속도가 일정한 경우엔 로봇의 단위 시간당 발열량으로 발열량 지수 값을 설정하고, 로봇의 단위 시간당 발열량이 일정하면 로봇의 이동 속도로 지수 값을 설정할 수 있다. 이 값 역시 건조 품질에 영향을 미치므로 사전 테스트를 통해 작업 면 별 값을 설정해 놓을 수 있다.
이후, 선체 블록내부 작업경로 생성 장치는 생성된 작업 단면 상의 작업경로를 이용하여 전체 작업경로를 스케줄링할 수 있다(S214).
구체적으로, 선체 블록내부 작업경로 생성 장치는 각 작업 면별로 작업경로가 구해지면 블록 전체 작업을 위해 각 작업 면별 작업경로를 조합할 수 있다. 면별 작업 순서는 건조 공정의 지침에 따라 각 경로를 순차적으로 나열될 수 있다. 단, 작업자의 선택 여하에 따라 일부 작업 면은 생략할 수도 있다.
이후, 선체 블록내부 작업경로 생성 장치는 쉘별 작업경로 생성부(108)를 통해 생성된 전체 작업경로를 검증할 수 있다(S216). 예를 들어, 선체 블록내부 작업경로 생성 장치는 작업 시간, 환경과의 충돌, 건조 품질 등의 관점에서 전체 작업경로를 검증할 수 있다. 구체적으로, 선체 블록내부 작업경로 생성 장치는 전체 작업경로의 작업 시간이 정해진 시간을 초과하였는지, 선체 블록내부 작업경로 생성 장치의 저장공간 중 부재 DB(100)에 존재하지 않는 부재 데이터로 인해 환경과의 충돌 우려가 발생하였는지, 건조 품질을 위해 일부 영역의 간격을 조밀하게 할 필요가 있는지, 경로 생성 작업을 재 실시하지 않고 현재 생성된 경로를 인위적으로 수정할 필요가 있는지 등을 검증할 수 있다.
이상 설명한 바와 같이, 본 발명의 실시예에서는, 선체 내부의 블록 및 부재를 파악하여 로봇의 충돌이 배제되는 선체 내부의 작업경로를 생성하고, 전체 작업경로를 스케줄링 함으로써, 보다 정확하고 편리한 선체 블록내부 작업 환경을 제공할 수 있도록 구현한 것이다. 한편, 본 발명은 와이어(wire)를 이용하여 선체 블록 내부를 자유 이동할 수 있는 로봇에 대해서도 작업경로를 자동 생성할 수 있음을 주지할 필요가 있다.
100: 부재 DB
102: 로봇 DB
104: 전처리부
106: 면별 작업경로 생성부
108: 쉘별 작업경로 생성부
110: 후처리부
102: 로봇 DB
104: 전처리부
106: 면별 작업경로 생성부
108: 쉘별 작업경로 생성부
110: 후처리부
Claims (9)
- 선체 내부의 블록을 구성하는 부재 데이터가 저장되는 부재 데이터베이스와,
상기 선체 내부의 블록에서의 작업을 수행할 로봇에 대한 로봇 데이터가 저장되는 로봇 데이터베이스와,
상기 부재 데이터 및 로봇 데이터를 로딩하여 전처리하는 전처리부와,
상기 전처리된 부재 데이터와 전처리된 로봇 데이터를 이용하여 비충돌 로봇 이동 가능 영역을 생성하고, 생성되는 상기 비충돌 로봇 이동 가능 영역에 대한 작업 단면을 생성하고, 상기 생성된 상기 작업 단면상의 작업경로를 생성하는 면별 작업경로 생성부와,
상기 면별 작업경로 생성부를 통해 생성된 상기 작업경로를 기반으로 전체 작업경로를 쉘별로 스케줄링(scheduling)하는 쉘별 작업경로 생성부를 포함하되,
상기 면별 작업 경로 생성부는,
상기 전처리된 부재 데이터와 상기 전처리된 로봇 데이터간의 비충돌 영역을 생성하고, 상기 생성된 비충돌 영역과 기 설정된 로봇 이동 가능 영역을 참조로 상기 비충돌 로봇 이동 가능 영역을 생성하는
선체 블록내부 작업경로 생성 장치.
- 삭제
- 제 1 항에 있어서,
상기 면별 작업 경로 생성부는 수학식 CF * M에 의하여 상기 비충돌 로봇 이동 가능 영역을 생성하는 것을 특징으로 하는 선체 블록내부 작업경로 생성 장치.
여기서, CF는 비충돌 영역, M은 기 설정된 로봇 이동 가능 영역이며, 연산자 *는 공통영역을 의미함.
- 제 1 항 또는 제 3 항 또는 제 4 항에 있어서,
상기 선체 블록내부 작업경로 생성 장치는,
상기 쉘별 작업경로 생성부를 통해 생성된 상기 전체 작업경로를 검증하는 후처리부를 더 포함하는
선체 블록내부 작업경로 생성 장치.
- 선체 내부의 블록을 구성하는 부재 데이터와, 상기 선체 내부의 블록에서의 작업을 수행할 로봇에 대한 로봇 데이터를 로딩하여 전처리하는 과정과,
상기 전처리하는 과정에 의해 전처리된 부재 데이터와 전처리된 로봇 데이터 간의 비충돌 영역을 생성하는 과정과,
생성되는 상기 비충돌 영역과 기 설정된 로봇 이동 가능 영역을 참조로 비충돌 로봇 이동 가능 영역을 생성하는 과정과,
상기 선체 내부의 블록에 대한 작업 단면을 생성한 후 생성되는 상기 작업 단면 상의 작업경로를 생성하는 과정과,
생성되는 상기 작업 단면 상의 작업경로를 조합하여 전체 작업경로를 스케줄링하는 과정을 포함하되,
상기 비충돌 영역은, 수학식 U-B (-R)에 의해 구현되며, 상기 U는 상기 부재 데이터, 상기 B는 상기 전처리된 부재 데이터, 상기 R은 상기 전처리된 로봇 데이터, 상기 은 민코브스키 연산(Minkowski Sum)을 각각 나타내는
선체 블록내부 작업경로 생성 방법.
- 삭제
- 제 6 항에 있어서,
상기 비충돌 로봇 이동 가능 영역은, 수학식 CF * M에 의해 구현되며, 상기 CF는 상기 비충돌 영역, 상기 M은 상기 기 설정된 로봇 이동 가능 영역인 것을 특징으로 하는
선체 블록내부 작업경로 생성 방법.
- 제 6 항 또는 제 8 항에 있어서,
상기 선체 블록내부 작업경로 생성 방법은,
스케줄링되는 상기 전체 작업경로를 검증하는 과정을 더 포함하는
선체 블록내부 작업경로 생성 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020100084632A KR101160144B1 (ko) | 2010-08-31 | 2010-08-31 | 선체 블록내부 작업경로 생성 장치 및 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020100084632A KR101160144B1 (ko) | 2010-08-31 | 2010-08-31 | 선체 블록내부 작업경로 생성 장치 및 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20120020790A KR20120020790A (ko) | 2012-03-08 |
KR101160144B1 true KR101160144B1 (ko) | 2012-06-27 |
Family
ID=46129326
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020100084632A KR101160144B1 (ko) | 2010-08-31 | 2010-08-31 | 선체 블록내부 작업경로 생성 장치 및 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101160144B1 (ko) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20100027683A (ko) * | 2008-09-03 | 2010-03-11 | 한국과학기술원 | 로봇의 경로계획 장치 및 방법 |
-
2010
- 2010-08-31 KR KR1020100084632A patent/KR101160144B1/ko active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20100027683A (ko) * | 2008-09-03 | 2010-03-11 | 한국과학기술원 | 로봇의 경로계획 장치 및 방법 |
Also Published As
Publication number | Publication date |
---|---|
KR20120020790A (ko) | 2012-03-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5144785B2 (ja) | ロボットの着目部位と周辺物との干渉を予測する方法及び装置 | |
Yu et al. | Planning optimal paths for multiple robots on graphs | |
EP2366504B1 (en) | Robot system | |
US9957120B2 (en) | Stowage pattern calculation device and stowage device for stowing plurality types of objects | |
EP3578322A1 (en) | Robot path-generating device and robot system | |
Blanchet et al. | Interference detection for cable-driven parallel robots (CDPRs) | |
US20210213606A1 (en) | Parameter identification apparatus, parameter identification method, and non-transitory computer-readable storage medium storing a parameter identification program | |
EP2732935B1 (en) | Method for checking a travelable area of a plane of travel for a robot, robot and recording medium | |
Nishi et al. | Distributed route planning for multiple mobile robots using an augmented Lagrangian decomposition and coordination technique | |
Ho et al. | Collision-free curvature-bounded smooth path planning using composite Bezier curve based on Voronoi diagram | |
KR102221884B1 (ko) | 용접 패스 정보의 취득 방법 및 용접 로봇 시스템 | |
Park et al. | Fast trajectory planning for multiple quadrotors using relative safe flight corridor | |
CN113867347A (zh) | 机器人路径规划方法、装置、管理系统及计算机存储介质 | |
Hassan et al. | Collaboration of multiple autonomous industrial robots through optimal base placements | |
KR101160144B1 (ko) | 선체 블록내부 작업경로 생성 장치 및 방법 | |
Dai et al. | A framework for multi-robot coverage analysis of large and complex structures | |
US6597967B2 (en) | System and method for planning a tool path along a contoured surface | |
Litus et al. | A distributed heuristic for energy-efficient multirobot multiplace rendezvous | |
Youakim et al. | Motion planning for an underwater mobile manipulator by exploiting loose coupling | |
Majd et al. | Integrating safety-aware route optimisation and run-time safety monitoring in controlling swarms of drones | |
US20140207367A1 (en) | Method for defining a fall back route for a mobile machine, method of fall back, by a mobile machine, for such a route, associated modules and computer programmes | |
JP7428399B2 (ja) | 統一データベースに基づく船舶の建造シミュレーション方法、及び建造シミュレーションプログラム | |
Dharmadhikari et al. | Autonomous Exploration and General Visual Inspection of Ship Ballast Water Tanks using Aerial Robots | |
Zacharia et al. | Distributed control for 3D inspection using multi-UAV systems | |
KR101239336B1 (ko) | 이동 장치의 이동 경로 생성 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20150601 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20180601 Year of fee payment: 7 |