KR20170135384A - 이더캣 기반의 분산 시계 동기화를 위한 장치, 이를 위한 방법 및 이 방법이 기록된 컴퓨터 판독 가능한 기록매체 - Google Patents
이더캣 기반의 분산 시계 동기화를 위한 장치, 이를 위한 방법 및 이 방법이 기록된 컴퓨터 판독 가능한 기록매체 Download PDFInfo
- Publication number
- KR20170135384A KR20170135384A KR1020160067212A KR20160067212A KR20170135384A KR 20170135384 A KR20170135384 A KR 20170135384A KR 1020160067212 A KR1020160067212 A KR 1020160067212A KR 20160067212 A KR20160067212 A KR 20160067212A KR 20170135384 A KR20170135384 A KR 20170135384A
- Authority
- KR
- South Korea
- Prior art keywords
- slave device
- moving average
- delay time
- weighted moving
- propagation delay
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
- 238000000034 method Methods 0.000 title claims abstract description 25
- 238000004891 communication Methods 0.000 claims abstract description 14
- 238000004364 calculation method Methods 0.000 claims description 21
- RTZKZFJDLAIYFH-UHFFFAOYSA-N Diethyl ether Chemical compound CCOCC RTZKZFJDLAIYFH-UHFFFAOYSA-N 0.000 claims 2
- 238000012935 Averaging Methods 0.000 claims 1
- 230000003111 delayed effect Effects 0.000 abstract 1
- 238000005259 measurement Methods 0.000 description 21
- 238000012937 correction Methods 0.000 description 12
- 230000001360 synchronised effect Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 230000001934 delay Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000010355 oscillation Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000001356 surgical procedure Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L7/00—Arrangements for synchronising receiver with transmitter
- H04L7/0095—Arrangements for synchronising receiver with transmitter with mechanical means
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L7/00—Arrangements for synchronising receiver with transmitter
- H04L7/04—Speed or phase control by synchronisation signals
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
본 발명은 이더캣 기반의 분산 시계 동기화를 위한 장치, 이를 위한 방법 및 이 방법이 기록된 컴퓨터 판독 가능한 기록매체에 관한 것으로, 이러한 본 발명은 참조 슬레이브 장치 및 적어도 하나의 커먼 슬레이브 장치를 포함하는 슬레이브 장치와 이더캣(EtherCAT) 네트워크를 통해 연결되어 통신하는 통신부와, 시스템 애플리케이션 혹은 제어 애플리케이션이 재실행되면, 상기 커먼 슬레이브 장치의 전파 지연 시간을 산출하는 지연시간산출모듈과, 상기 산출된 전파 지연 시간과 이전에 산출된 지수 가중 이동 평균을 이용하여 현재의 지수 가중 이동 평균을 산출하는 지연평균산출모듈과, 상기 산출된 현재의 지수 가중 이동 평균을 전파 지연 시간으로 상기 커먼 슬레이브 장치가 레지스터에 기록하도록 상기 산출된 현재의 지수 가중 이동 평균 상기 통신부를 통해 전송하는 지연시간기록모듈을 포함하는 것을 특징으로 하는 마스터 장치의 이더캣 기반의 분산 시계 동기화를 위한 장치와, 이에 따른 방법 및 이 방법이 기록된 컴퓨터 판독 가능한 기록매체를 제공한다.
Description
본 발명은 이더캣 기반의 분산 시계 동기화 기술에 관한 것으로, 보다 상세하게는, 전파 지연 측정 오류를 보정할 수 있는 이더캣 기반의 분산 시계 동기화를 위한 장치, 이를 위한 방법 및 이 방법이 기록된 컴퓨터 판독 가능한 기록매체에 관한 것이다.
IT 트렌드에 힘입어, 기존의 제어 시스템은 산업용 이더넷 기술을 이용한 분산 제어 시스템으로 빠르게 대체되고 있다. 산업용 이더넷기술은 IEC 61784, 61158-2 등의 표준으로 정의되어 있으며, 높은 전송 속도, TCP/IP 지원, 가격 경쟁력 확보 등 다양한 이점을 이용하여 분산 제어 시스템의 효율적인 구성을 가능하게 한다. 특히, 산업용 이더넷 표준 중의 하나인 이더캣(EtherCAT)은 통합형 메시지 프레임(summation frame) 및 하드웨어 기반의 프레임 릴레이를 통해 고속의 실시간 통신을 구현함으로써, 다양한 분야의 정밀 제어 시스템에서 활발히 사용되고 있다.
네트워크의 여러 장치에게 전송될 이더캣 메시지는 하나의 이더넷 프레임으로 묶여 전송되므로 매우 높은 전송 대역폭을 실현할 수 있다. 또한 각 장치는 전송받은 프레임을 하드웨어 기반의 프레임 릴레이를 통하여 다음 장치에게 전달하므로 매우 확정적인 메시지 전송 시간을 확보할 수 있으며, 이를 이용하여 고도로 동기화된 분산 제어 시스템을 구축할 수 있다. 이에 따라 이더캣은 공장 자동화, 로봇 수술, 생산 공정 등 다양한 제어 응용에 적용되고 있다.
정밀한 시계 동기화는 분산 제어 시스템에서 그 중요성이 점점 증가하고 있다. 분산 제어 네트워크에서 시계 동기화를 수행하지 않고 로컬 시계에 의존하여 제어 장치 내의 태스크 주기를 결정할 경우, 제어 네트워크에 속한 모든 장치의 태스크 활성화 시점이 일정하지 않으므로, 동기화된 동작의 구현이 어렵다. 이에 반해, 전역적으로 동기화된 시계를 이용하면 높은 수준의 동기 제어가 가능하다. 예를 들어, 산업용 로봇의 경우, 모터 드라이브를 동기화하여 모터를 제어함으로써 원하는 경로를 정밀하게 추적할 수 있다.
본 발명의 목적은 전파 지연 편차에 따라 발생하는 전파 지연 측정 오류를 보정할 수 있는 이더캣 기반의 분산 시계 동기화를 위한 장치, 이를 위한 방법 및 이 방법이 기록된 컴퓨터 판독 가능한 기록매체를 제공함에 있다.
상술한 바와 같은 목적을 달성하기 위한 본 발명의 바람직한 실시예에 따른 마스터 장치의 이더캣 기반의 분산 시계 동기화를 위한 장치는 참조 슬레이브 장치 및 적어도 하나의 커먼 슬레이브 장치를 포함하는 슬레이브 장치와 이더캣(EtherCAT) 네트워크를 통해 연결되어 통신하는 통신부와, 시스템 애플리케이션 혹은 제어 애플리케이션이 재실행되면, 상기 커먼 슬레이브 장치의 전파 지연 시간을 산출하는 지연시간산출모듈과, 상기 산출된 전파 지연 시간과 이전에 산출된 지수 가중 이동 평균을 이용하여 현재의 지수 가중 이동 평균을 산출하는 지연평균산출모듈과, 상기 산출된 현재의 지수 가중 이동 평균을 전파 지연 시간으로 상기 커먼 슬레이브 장치가 레지스터에 기록하도록 상기 산출된 현재의 지수 가중 이동 평균 상기 통신부를 통해 전송하는 지연시간기록모듈을 포함한다.
상기 현재의 지수 가중 이동 평균은 상기 시스템 애플리케이션 혹은 제어 애플리케이션이 재실행될 때 상기 산출된 전파 지연 시간에 가중치를 적용한 값과 상기 이전에 산출된 지수 가중 이동 평균에 잔여 가중치를 적용한 값의 평균인 것을 특징으로 한다.
상기 현재의 지수 가중 이동 평균은 수학식
에 따라 산출되며, 상기 는 현재의 지수 가중 이동 평균이며, 상기 은 초기 지수 가중 이동 평균이고, 상기 는 가중치이며, 상기 는 현재 산출된 전파 지연 시간이고, 상기 는 상기 이전에 산출된 지수 가중 이동 평균인 것을 특징으로 한다.
더욱이, 상기 지연시간산출모듈이 네트워크가 구성되는 것을 감지하면, 상기 커먼 슬레이브 장치의 전파 지연 시간을 복수번 산출하며, 상기 지연평균산출모듈은 상기 복수번 산출된 전파 지연 시간의 평균을 상기 초기 지수 가중 이동 평균으로 결정하는 것을 특징으로 한다.
상술한 바와 같은 목적을 달성하기 위한 본 발명의 바람직한 실시예에 따른 마스터 장치의 이더캣 기반의 분산 시계 동기화를 위한 방법은 시스템 애플리케이션 혹은 제어 애플리케이션이 재실행되면, 참조 슬레이브 장치 및 적어도 하나의 커먼 슬레이브 장치를 포함하는 슬레이브 장치 중 상기 커먼 슬레이브 장치의 전파 지연 시간을 산출하는 단계와, 상기 산출된 전파 지연 시간과 이전에 산출된 지수 가중 이동 평균을 이용하여 현재의 지수 가중 이동 평균을 산출하는 단계와, 상기 산출된 현재의 지수 가중 이동 평균을 전파 지연 시간으로 상기 커먼 슬레이브 장치가 레지스터에 기록하도록 상기 산출된 현재의 지수 가중 이동 평균 전송하는 단계를 포함한다.
여기서, 상기 현재의 지수 가중 이동 평균은 상기 시스템 애플리케이션 혹은 제어 애플리케이션이 재실행될 때 상기 산출된 전파 지연 시간에 가중치를 적용한 값과 상기 이전에 산출된 지수 가중 이동 평균에 잔여 가중치를 적용한 값의 평균인 것을 특징으로 한다.
다른 말로, 상기 현재의 지수 가중 이동 평균은 다음의 수학식
에 따라 산출되며, 상기 는 현재의 지수 가중 이동 평균이며, 상기 은 초기 지수 가중 이동 평균이고, 상기 는 가중치이며, 상기 는 현재 산출된 전파 지연 시간이고, 상기 는 상기 이전에 산출된 지수 가중 이동 평균인 것을 특징으로 한다.
네트워크가 구성될 때, 상기 커먼 슬레이브 장치의 전파 지연 시간이 복수번 산출되며, 상기 초기 지수 가중 이동 평균은 상기 복수번 산출된 전파 지연 시간의 평균인 것을 특징으로 한다.
상술한 바와 같은 목적을 달성하기 위해 전술한 바와 같은 본 발명의 바람직한 실시예에 따른 마스터 장치의 이더캣 기반의 분산 시계 동기화를 위한 방법이 기록된 컴퓨터 판독 가능한 기록매체를 제공한다.
본 발명에 따르면, 네트워크를 구성할 때, 시스템 혹은 제어 애플리케이션이 재실행될 때, 필요한 횟수로 전파 지연을 측정하고, 측정된 전파 지연을 통해 지수 가중 이동 평균을 산출한 후, 이를 전파 지연 시간으로 설정하여, 적정한 수의 연산으로 정밀한 분산 시계 동기화를 이룰 수 있다.
도 1 및 도 2는 본 발명의 실시예에 따른 이더캣 기반의 분산 제어 시스템의 구성을 설명하기 위한 도면이다.
도 3은 본 발명의 실시예에 따른 마스터 장치를 설명하기 위한 블록도이다.
도 4 및 도 5는 본 발명의 실시예에 따른 분산 시계 동기화를 위한 방법을 설명하기 위한 도면이다.
도 6 및 도 7은 본 발명의 실시예에 따른 분산 시계 동기화를 위한 방법을 설명하기 위한 흐름도이다.
도 3은 본 발명의 실시예에 따른 마스터 장치를 설명하기 위한 블록도이다.
도 4 및 도 5는 본 발명의 실시예에 따른 분산 시계 동기화를 위한 방법을 설명하기 위한 도면이다.
도 6 및 도 7은 본 발명의 실시예에 따른 분산 시계 동기화를 위한 방법을 설명하기 위한 흐름도이다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예들이 설명될 것이다. 이때, 첨부된 도면에서 동일한 구성 요소는 가능한 동일한 부호로 나타내고 있음을 유의해야 한다. 또한, 본 발명의 요지를 흐리게 할 수 있는 공지 기능 및 구성에 대한 상세한 설명은 생략할 것이다. 마찬가지의 이유로 첨부 도면에 있어서 일부 구성요소는 과장되거나 생략되거나 또는 개략적으로 도시되었으며, 각 구성요소의 크기는 실제 크기를 전적으로 반영하는 것이 아니다.
특히, 이하에서 설명되는 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념으로 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다. 따라서 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명의 가장 바람직한 실시예에 불과할 뿐, 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형 예들이 있을 수 있음을 이해하여야 한다.
먼저, 본 발명의 실시예에 따른 이더캣(EtherCAT) 기반의 분산 제어 시스템에 대해서 설명하기로 한다. 도 1 및 도 2는 본 발명의 실시예에 따른 이더캣 기반의 분산 제어 시스템의 구성을 설명하기 위한 도면이다.
도 1 및 도 2를 참조하면, 본 발명의 실시예에 따른 분산 제어 시스템은 마스터 장치(master, 100) 및 복수의 슬레이브 장치(slave, 200)를 포함한다. 일례로, 복수의 슬레이브 장치(200)는 도 1에 보인 바와 같이, 어느 하나의 로봇팔의 축에 배치된 모터를 제어하기 위한 모터 드라이버가 될 수 있다. 그리고 마스터 장치(100)는 각 모터 드라이버를 제어하기 위한 컴퓨터 연산을 수행할 수 있는 장치가 될 수 있다.
슬레이브 장치(200)는 하나의 참조 슬레이브 장치(reference slave, 210)와 하나 혹은 복수의 커먼 슬레이브 장치(common slave, 220)로 구분할 수 있다. 참조 슬레이브 장치(210)는 이더캣 기반의 분산 제어 시스템의 네트워크 토폴로지 상 마스터 장치(100)에 대해 첫 번째 위치한 슬레이브 장치(200)이다. 커먼 슬레이브 장치(220)는 참조 슬레이브 장치(210) 외의 나머지 슬레이브 장치(200)를 의미한다.
그러면, 본 발명의 실시예에 따른 마스터 장치(100)의 구성에 대해서 설명하기로 한다. 도 3은 본 발명의 실시예에 따른 마스터 장치를 설명하기 위한 블록도이다. 도 3을 참조하면, 마스터 장치(100)는 통신부(110), 저장부(120) 및 제어부(130)를 포함한다.
통신부(110)는 마스터 장치(100)와 복수의 슬레이브 장치(200)가 이더캣 네트워크를 통해 연결될 때, 슬레이브 장치(200)와 통신을 위한 것이다. 이러한 통신부(110)는 슬레이브 장치(200)로 데이터그램(datagram)을 전송하고, 수신할 수 있다. 데이터그램(datagram)은 이더캣의 기본 메시지 단위이며, 데이터그램은 지정된 슬레이브 장치(200)의 특정 주소를 가지는 메모리(혹은 레지스터)에 데이터를 쓰거나, 해당 주소의 메모리로부터 데이터를 읽어올 수 있다. 전송되는 데이터그램들은 하나의 이더넷 프레임(ethernet frame)에 포함되어 전송된다.
데이터그램들은 마스터 장치(100)에 의해 주기적으로 생성되어 모든 슬레이브 장치(200)에 순차적으로 전달되고, 마지막 슬레이브 장치(200)에서부터 다시 역순으로 전달되어 마스터 장치(100)로 돌아온다. 목적지 슬레이브 장치(200)에 데이터그램이 도달하면 해당 슬레이브 장치(200)의 메모리에서 필요한 데이터를 읽어오거나, 쓰고자 하는 데이터를 복사한다. 분산 제어 시스템은 링 형태의 네트워크 토폴로지가 사용되는 것이 바람직하며, 이를 이용하여 데이터그램을 통해 모든 장치 간의 시계 값을 공유할 수 있다.
저장부(120)는 메모리 혹은 레지스터로 구현될 수 있다. 저장부(120)는 제어부(130)가 산출한 지수 가중 이동 평균 혹은 지수 가중 이동 평균을 산출할 때 사용되는 가중치 등을 저장할 수 있다.
제어부(130)는 본 발명의 실시예에 따른 마스터 장치(100)의 전반적인 동작 및 마스터 장치(100)의 내부 블록들 간 신호 흐름을 제어하고, 데이터를 처리하는 데이터 처리 기능을 수행할 수 있다. 이러한 제어부(350)는 대표적으로 중앙 처리 장치(Central Processing Unit : CPU)를 예시할 수 있다. 본 발명의 실시예에 따른 제어부(130)는 지연시간산출모듈(131), 지연평균산출모듈(133) 및 지연시간기록모듈(135)을 포함한다. 이러한 지연시간산출모듈(131), 지연평균산출모듈(133) 및 지연시간기록모듈(135)을 포함하는 제어부(130)의 동작은 아래에서 더 상세하게 설명될 것이다.
한편, 마스터 장치(100)는 마스터 장치(100)에 사용자의 입력을 입력하기 위한 입력부(미도시), 마스터 장치(100)가 연결된 슬레이브 장치(200)에 대한 상태 정보를 표시하기 위한 표시부(미도시) 등을 더 포함할 수 있다. 하지만, 이들에 대한 설명은 단순화를 위하여 생략하기로 한다.
다음으로, 본 발명의 실시예에 따른 분산 시계 동기화를 수행하는 방법에 대해서 설명하기로 한다. 도 4 및 도 5는 본 발명의 실시예에 따른 분산 시계 동기화를 위한 방법을 설명하기 위한 도면이다.
상세한 방법의 설명에 앞서, 분산 시계 동기화에 사용되는 용어에 대해서 설명하기로 한다. 분산 시계 동기화를 위해 다음과 같이 표준 문서에 정의된 용어를 사용할 수 있다. 시스템 시간(System Time)은 전역 시계(Global Clock) 값을 나타내기 위한 시간으로, 2000년 1월 1일 자정을 기준으로 하여 1 나노 초 단위씩 증가하는 정수 값으로 정의한다. 시스템 시간은 각 슬레이브 장치(200) 별로 64비트 크기의 레지스터에 저장되며, 본 발명의 실시예에 따른 시계 동기화 기능에 의하여 관리된다. 로컬 시간(Local Time)은 슬레이브 장치(200) 고유의 시간을 나타내며, 슬레이브 장치(200)에 내장되어 있는 로컬 시계(Local Clock 또는 Slave Clock)에 의해 관리된다. 참조 시간(Reference Time)은 마스터 장치(100)에서 가장 가까운 슬레이브 장치(200), 즉 참조 슬레이브 장치(210)에 의해 관리되는 시스템 시간을 가리키며, 모든 슬레이브 장치(200)의 시스템 시간은 참조 시간을 기준으로 동기화된다.
본 발명의 실시예에 따른 분산 제어 시스템은 다음의 3가지 측면, 즉 오프셋(offset) 보정, 전파 지연(Propagation delay) 보정 및 드리프트 보정(drift compensation)을 통해 네트워크의 모든 장치의 시계를 동기화할 수 있다. 오프셋(offset)은 참조 시간과 로컬 시간 간의 차이를 뜻한다. 각 슬레이브 장치(200)의 부팅 시간 차이 등으로 인하여 발생하는 로컬 시간의 시작 시점 차이에 의해 나타난다. 전파 지연(Propagation delay)은 마스터 장치(100)로부터 각 슬레이브 장치(200)까지 메시지 전송에 걸리는 시간을 의미한다. 전파 지연은 네트워크 토폴로지의 형태, 슬레이브 장치(200)의 구현 특성, 네트워크에서의 슬레이브 장치(200) 위치에 따라 달라질 수 있다. 시스템 시간 드리프트는 각 슬레이브 장치(200)의 로컬 시계에 서 발생하는 오실레이터의 진동 편차에 의한 시스템 시간의 차이를 의미한다.
각 슬레이브 장치(200)의 시스템 시간이 정확히 동기화 되더라도, 드리프트에 의해 오차가 발생하게 된다. 시계 동기화는 다음의 세 단계, 즉 전파 지연 측정, 오프셋 보정, 드리프트 보정을 거쳐 이루어진다.
전파 지연 측정은 마스터 장치(100)가 슬레이브 장치(200)를 초기화할 때 이루어진다. 전파 지연 측정을 위해 마스터 장치(100)는 모든 슬레이브 장치(200)에 대하여 특정 주소의 레지스터에 대한 전역 쓰기(BWR; Broadcast Write) 명령을 프레임에 포함시켜 전송한다. 각 슬레이브 장치(200)는 명령을 수신한 시간을 로컬 시간 기준으로 측정하여 해당 레지스터에 저장한다. 모든 슬레이브 장치(200)를 순환하고 돌아오는 프레임이 각 포트에 도착한 시간 또한 해당 레지스터에 기록된다. 각 도착 시간의 기록이 끝나면 마스터 장치(100)는 모든 슬레이브 장치(200)로부터 해당 레지스터 값을 읽어온다. 마스터 장치(100)는 읽어 들인 시간 값으로부터 전파 지연을 측정할 수 있다. 도 2를 참조하면, 를 슬레이브 장치 s의 포트 p에 측정 프레임이 도착한 시간으로 정의하였을 때, 슬레이브 장치 i, i+1 사이의 전파 지연 시간은 다음의 수학식 1과 같다.
이와 같이, 마스터 장치(100)는 각 슬레이브 장치(200) 사이의 전파 지연 시간을 측정하여, 참조 슬레이브 장치(210)와 각 커먼 슬레이브 장치(220) 사이의 전파 지연 시간을 산출할 수 있다. 산출된 전파 지연 시간은 마스터 장치(100)에 의해 각 슬레이브 장치(200)의 해당하는 레지스터, 예컨대, "시스템 시간 지연(system time delay)" 레지스터에 기록된다.
오프셋 보정을 위해 슬레이브 장치(200)의 초기화 과정에서 마스터 장치(100)의 제어에 따라, 참조 슬레이브(reference slave) 장치(210)의 시스템 시간은 커먼 슬레이브 장치(220)에 전달된다. 그러면, 커먼 슬레이브 장치(220)는 전달받은 시스템 시간과 자신의 로컬 시간 사이의 차를 계산하여 해당하는 레지스터, 예컨대, "시스템 시간 오프셋(system time offset)" 레지스터에 저장한다. 이는 다음의 수학식 2에 따른다.
드리프트 보정은 마스터 장치(100)의 운영(OP; operation) 상태에서 이루어진다. 드리프트 보정을 위해 마스터 장치(200)는 주기적으로 참조 시간 값을 각 슬레이브 장치(200)에 전달해 주어야 한다. 이를 위하여, 마스터 장치(200)는 "단일 읽기 다중 쓰기(RMW; Read Multiple Write)" 명령어를 사용할 수 있다. 보다 자세히 설명하면, 마스터 장치(200)는 슬레이브 장치(200)와의 실시간 통신을 위한 EtherCAT 프레임 전송 시, 미리 정해진 드리프트 보정 주기마다 실시간 데이터를 담은 데이터그램과 함께 보정 데이터그램을 포함하는 프레임을 전송한다. 이때, 마스터 장치(200)는 참조 슬레이브 장치(210)의 시스템 시간을 읽어온 후, 읽어온 시스템 시간을 보정 데이터그램에 포함시킨다. 이에 따라, 보정 데이터그램을 통해 시스템 시간이 각 커먼 슬레이브 장치(220)에 전달된다. 이때, 시스템 시간을 전달받은 커먼 슬레이브 장치(220)는 다음의 수학식 3을 기반으로 자신의 시스템 시간 드리프트를 계산한다.
상술한 바와 같이, 드리프트를 계산한 후, 커먼 슬레이브 장치(220)는 커먼 슬레이브 장치(220)의 로컬 시계 속도를 보정할 수 있다. 드리프트가 양의 값을 가지면 커먼 슬레이브 장치(220)에서 관리중인 시스템 시간의 속도가 더 빠름을 의미하므로 로컬 시계의 속도를 감소시켜 드리프트를 줄인다. 반대의 경우, 로컬 시계의 속도를 증가시켜 드리프트를 감소시킬 수 있다.
한편, 전파 지연 측정 시, 전파 지연은 참조 슬레이브 장치(210)로부터 해당 슬레이브 장치(220)까지의 케이블 길이에 비례한 케이블 전송 지연(wire propagation delay), 해당 슬레이브 장치(220)까지 거치는 전체 슬레이브 장치(200)들의 처리 지연(processing delay), 슬레이브 장치(220)들의 프레임 전달을 위한 하드웨어 혹은 소프트웨어 프레임 릴레이에서의 전달 지연(fowarding delay)이 포함된다. 전술한 처리 지연 및 전달 지연에 의해, 각 프레임 별로 측정되는 전파 지연은 편차를 가질 수 있다. 이러한 전파 지연 편차는 각 커먼 슬레이브 장치(220) 별로 전파 지연 측정값에 반영될 수 있다. 그리고 이러한 전파 지연 편차로 인한 측정 오류에 따라 커먼 슬레이브 장치(220)의 시스템 시간이 일정한 오류를 지속적으로 유지할 수 있다. 또한, 오프셋 보정 단계에서 참조 슬레이브 장치(210)의 시스템 시간을 전달 받는 과정 중 해당 전파 지연 편차가 오프셋 계산에 오차로 반영될 수 있다. 전파 지연 편차는 슬레이브 장치를 지날 때마다 누적되므로 슬레이브 장치가 많을수록 전파 지연 편차가 커질 수 있으며, 이에 따라 최초 오프셋 오차도 커질 수 있다.
그러면, 이러한 전파 지연 편차로 인한 영향을 보정하기 위한 분산 시계 동기화를 위한 방법에 대해서 설명하기로 한다. 도 6 및 도 7은 본 발명의 실시예에 따른 분산 시계 동기화를 위한 방법을 설명하기 위한 흐름도이다. 도 6 및 도 7을 참조하는 실시예에서 하나의 커먼 슬레이브 장치(220)만이 도시되고 설명될 것이지만, 도 1에 도시된 실시예와 같이, 복수의 커먼 슬레이브 장치(220)가 존재할 수 있으며, 이 기술 분야에서 통상의 지식을 가진자라면 복수의 커먼 슬레이브 장치(220)로 이루어진 분산 제어 시스템의 경우에도 본 발명을 적용할 수 있을 것이다.
도 6을 참조하면, 마스터 장치(100)의 지연시간산출모듈(131)은 S110 단계에서 네트워크가 최초로 혹은 새로 구성되는 상태임을 인지할 수 있다. 그러면, S120 단계에서 마스터 장치(100)의 지연시간산출모듈(131)는 참조 슬레이브 장치(210) 및 커먼 슬레이브 장치(220)를 통해 전파 지연 시간을 측정하고, 이를 산출한다. S120 단계는 S121 단계 내지 S131 단계를 포함하며, 이러한 S120 단계는 복수회 수행된다.
S120 단계에 대해서 상세히 설명하면 다음과 같다. 마스터 장치(100)의 지연시간산출모듈(131)은 통신부(110)를 통해 S111 단계에 전파 지연 측정을 위한 프레임을 전송한다. 이 프레임을 측정 프레임이라고 칭하기로 한다. 측정 프레임에는 전역 쓰기(BWR: Broadcast Write) 명령이 포함된다. 마스터 장치(100)의 지연시간산출모듈(131)에 의해 S111 단계에 전송된 측정 프레임은 모든 슬레이브 장치(200)를 순환하여 다시 마스터 장치(100)로 돌아온다. 즉, 측정 프레임은 S123 단계에서 참조 슬레이브 장치(210)로부터 커먼 슬레이브 장치(220)로 전송되고, S125 단계에서 커먼 슬레이브 장치(220)로부터 참조 슬레이브 장치(210)로 전송되며, S127 단계에서 참조 슬레이브 장치(210)로부터 마스터 장치(100)로 전달된다. 도 2를 참조하면, 이 측정 프레임이 네트워크 내 슬레이브 장치(210, 220)를 순회할 때, 각 슬레이브 장치(210, 220)는 자신의 각 포트(Port 0, Port 1)마다 프레임이 도착한 시간을 측정한다. 마스터 장치(100)의 지연시간산출모듈(131)이 측정 프레임을 다시 수신하면, 측정이 완료된 것으로 판단한다.
이에 따라, 지연시간산출모듈(131)은 S129 단계에서 참조 슬레이브 장치(210) 및 커먼 슬레이브 장치(220)로부터 측정된 프레임 도착 시간을 수집한다. 그런 다음, 마스터 장치(100)의 지연시간산출모듈(131)은 S131 단계에서 슬레이브 장치(200)의 네트워크 토폴로지에 따라 네트워크 내 노드 간 프레임 전파 지연 시간을 산출한다. 예컨대, 마스터 장치(100)의 지연시간산출모듈(131)은 수학식 1에 따라 전파 지연 시간을 산출할 수 있다.
S110 단계는 복수회 수행되며, 이에 따라, 복수의 전파 지연 시간이 산출될 수 있다. 이에 따라, 마스터 장치(100)의 지연평균산출모듈(133)은 S140 단계에서 앞서 산출된 복수의 전파 지연 시간의 평균을 구한다. 여기서, 산출된 복수의 전파 지연 시간의 평균은 초기 지수 가중 이동 평균이 될 수 있다(). 이는 아래의 수학식 4를 참조로 상세하게 설명될 것이다. 그런 다음, 마스터 장치(100)의 지연시간기록모듈(135)은 S150 단계에서 산출된 전파 지연 시간의 평균을 전파 지연 시간으로 커먼 슬레이브 장치(220)의 레지스터에 기록한다. 이때, 지연시간기록모듈(135)은 통신부(110)를 통해 앞서 산출된 전파 지연 시간의 평균이 전파 지연 시간으로 기록된 데이터그램이 포함된 프레임을 커먼 슬레이브 장치(220)로 전송하면, 커먼 슬레이브 장치(220)는 수신된 전파 지연 시간의 평균을 전파 지연 시간으로 해당 레지스터에 기록할 수 있다. 이에 따라, 적어도 하나의 커먼 슬레이브 장치(220)는 기록된 전파 지연 시간의 평균을 전파 지연 시간으로 하여 분산 시계를 동기화할 수 있다.
전술한 바와 같이, 일 실시예에 따르면 전파 지연 시간은 전파 지연 시간의 평균이 된다. 이러한 상태에서, 마스터 장치(100)는 시스템 혹은 제어 애플리케이션이 재실행될 때마다, 도 5에 보인 바와 같이, 전파 지연 시간을 갱신한다. 도 7을 참조하면, 마스터 장치(100)의 지연시간산출모듈(131)은 S220 단계에서 시스템 애플리케이션 혹은 제어 애플리케이션이 재실행되는 것을 인지할 수 있다.
그러면, S220 단계에서 마스터 장치(100)의 지연시간산출모듈(131)은 참조 슬레이브 장치(210) 및 커먼 슬레이브 장치(220)를 통해 전파 지연 시간을 측정하고, 이를 산출한다. S220 단계는 S221 단계 내지 S231 단계를 포함하며, 이러한 S220 단계는 1회 수행된다. 또한, S220 단계는 S120 단계와 동일한 동작을 수행하며, S220 단계에 포함된 S221 단계 내지 S231 단계 또한 대응하는 S121 단계 내지 S131 단계와 동일한 동작을 수행한다. 즉, S211 단계 내지 S231 단계에 측정 프레임은 모든 슬레이브 장치(200)를 순환하여 다시 마스터 장치(100)로 돌아온다. 이때, 이 측정 프레임이 네트워크 내 슬레이브 장치(210, 220)를 순회할 때, 각 슬레이브 장치(210, 220)는 자신의 각 포트(Port 0, Port 1)마다 프레임이 도착한 시간을 측정한다(도 2 참조). 마스터 장치(100)의 지연시간산출모듈(131)이 통신부(110)를 통해 측정 프레임을 다시 수신하면, 측정이 완료된 것으로 판단한다.
이에 따라, 마스터 장치(100)의 지연시간산출모듈(131)은 S229 단계에서 참조 슬레이브 장치(210) 및 커먼 슬레이브 장치(220)로부터 측정된 프레임 도착 시간을 수집한다. 그런 다음, 마스터 장치(100)의 지연시간산출모듈(131)은 S231 단계에서 슬레이브 장치(200)의 네트워크 토폴로지에 따라 네트워크 내 노드 간 프레임 전파 지연 시간을 산출한다(수학식 1).
S220 단계는 1회 수행되기 때문에 1개의 전파 지연 시간이 산출된다. 이에 따라, 마스터 장치(100)의 지연평균산출모듈(133)은 S240 단계에서 전파 지연 시간의 지수 가중 이동 평균(EWMA: Exponential Weighted Moving Average)을 구한다. 이러한 지수 가중 이동 평균은 다음의 수학식 4에 따라 산출된다.
여기서, 는 현재의 지수 가중 이동 평균이며, 은 초기 지수 가중 이동 평균이며, 초기 지수 가중 이동 평균은 도 4를 참조로 하는 실시예에 따라 산출되는 복수의 전파 지연 시간의 평균이 될 수 있다. 는 가중치이며, 는 현재 산출된 전파 지연 시간이고, 는 이전에 산출된 지수 가중 이동 평균이다. 즉, 수학식 4의 (현재의) 지수 가중 이동 평균은 새로 산출된 전파 지연 시간 에 가중치 를 적용한 값과 이전에 산출된 지수 가중 이동 평균 에 잔여 가중치(1-)를 적용한 평균값이다. 다른 말로, (현재의) 지수 가중 이동 평균 는 시스템 애플리케이션 혹은 제어 애플리케이션이 재실행될 때 새로 산출된 전파 지연 시간 에 가중치 를 적용한 값과 이전에 산출된 지수 가중 이동 평균 에 잔여 가중치 (1-)를 적용한 값의 평균이다.
전술한 바와 같이, 지수 가중 이동 평균을 산출한 후, 마스터 장치(100)의 지연시간기록모듈(135)은 S250 단계에서 산출된 지수 가중 이동 평균을 전파 지연 시간으로 커먼 슬레이브 장치(220)의 레지스터에 기록한다. 이때, 지연시간기록모듈(135)은 통신부(110)를 통해 앞서 산출된 지수 가중 이동 평균이 전파 지연 시간으로 기록된 데이터그램이 포함된 프레임을 커먼 슬레이브 장치(220)로 전송하면, 커먼 슬레이브 장치(220)는 수신된 지수 가중 이동 평균을 전파 지연 시간으로 해당 레지스터에 기록할 수 있다. 이에 따라, 적어도 하나의 커먼 슬레이브 장치(220)는 기록된 지수 가중 이동 평균을 전파 지연 시간으로 하여 분산 시계를 동기화할 수 있다.
전술한 바와 같이, 마스터 장치(100)는 에서 최초 새로운 네트워크 토폴로지 구성 시에 한해 다수 측정을 통하여 전파 지연 시간 평균(초기 지수 가중 이동 평균)을 전파 지연 시간으로 설정하고, 이후에는 시스템 애플리케이션 혹은 제어 애플리케이션이 재실행 될 때마다 1회 전파 지연 시간을 산출한다. 그리고 새로 산출된 전파 지연 시간에 시스템 특성을 고려한 가중치()를 반영하고, 기존 지수 가중 이동 평균에 잔여 가중치(1-??)를 반영한다. 마스터 장치(100)는 구비된 영구 저장장치(예컨대, flash rom 등)에 해당 네트워크 토폴로지에 대한 지수 가중 이동 평균 과 가중치 를 저장할 수 있다. 한편, 마스터 장치(100)는 도 4에 보인 바와 같이, 네트워크 내 슬레이브 장치(200)의 네트워크 토폴로지가 변경될 경우, 이를 감지하여 새로이 전파 지연 시간을 측정할 수 있다.
한편, 앞서 설명된 본 발명의 실시예에 따른 방법은 다양한 컴퓨터수단을 통하여 판독 가능한 프로그램 형태로 구현되어 컴퓨터로 판독 가능한 기록매체에 기록될 수 있다. 여기서, 기록매체는 프로그램 명령, 데이터 파일, 데이터구조 등을 단독으로 또는 조합하여 포함할 수 있다. 기록매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 예컨대 기록매체는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광 기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치를 포함한다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 와이어뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 와이어를 포함할 수 있다. 이러한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상 본 발명을 몇 가지 바람직한 실시예를 사용하여 설명하였으나, 이들 실시예는 예시적인 것이며 한정적인 것이 아니다. 이와 같이, 본 발명이 속하는 기술 분야에서 통상의 지식을 지닌 자라면 본 발명의 사상과 첨부된 특허청구범위에 제시된 권리범위에서 벗어나지 않으면서 균등론에 따라 다양한 변화와 수정을 가할 수 있음을 이해할 것이다.
100: 마스터 장치
110: 통신부
120: 저장부 130: 제어부
131: 지연시간산출모듈 133: 지연평균산출모듈
135: 지연시간기록모듈 200: 슬레이브 장치
210: 참조 슬레이브 장치 220: 커먼 슬레이브 장치
120: 저장부 130: 제어부
131: 지연시간산출모듈 133: 지연평균산출모듈
135: 지연시간기록모듈 200: 슬레이브 장치
210: 참조 슬레이브 장치 220: 커먼 슬레이브 장치
Claims (3)
- 마스터 장치의 이더캣 기반의 분산 시계 동기화를 위한 장치에 있어서,
참조 슬레이브 장치 및 적어도 하나의 커먼 슬레이브 장치를 포함하는 슬레이브 장치와 이더캣(EtherCAT) 네트워크를 통해 연결되어 통신하는 통신부;
시스템 애플리케이션 혹은 제어 애플리케이션이 재실행되면, 상기 커먼 슬레이브 장치의 전파 지연 시간을 산출하는 지연시간산출모듈;
상기 산출된 전파 지연 시간과 이전에 산출된 지수 가중 이동 평균을 이용하여 현재의 지수 가중 이동 평균을 산출하는 지연평균산출모듈; 및
상기 산출된 현재의 지수 가중 이동 평균을 전파 지연 시간으로 상기 커먼 슬레이브 장치가 레지스터에 기록하도록 상기 산출된 현재의 지수 가중 이동 평균 상기 통신부를 통해 전송하는 지연시간기록모듈;을 포함하는 것을 특징으로 하는 마스터 장치의 이더캣 기반의 분산 시계 동기화를 위한 장치. - 마스터 장치의 이더캣 기반의 분산 시계 동기화를 위한 방법에 있어서,
시스템 애플리케이션 혹은 제어 애플리케이션이 재실행되면, 참조 슬레이브 장치 및 적어도 하나의 커먼 슬레이브 장치를 포함하는 슬레이브 장치 중 상기 커먼 슬레이브 장치의 전파 지연 시간을 산출하는 단계;
상기 산출된 전파 지연 시간과 이전에 산출된 지수 가중 이동 평균을 이용하여 현재의 지수 가중 이동 평균을 산출하는 단계; 및
상기 산출된 현재의 지수 가중 이동 평균을 전파 지연 시간으로 상기 커먼 슬레이브 장치가 레지스터에 기록하도록 상기 산출된 현재의 지수 가중 이동 평균 전송하는 단계;를 포함하는 것을 특징으로 하는 마스터 장치의 이더캣 기반의 분산 시계 동기화를 위한 방법. - 제2항에 따른 마스터 장치의 이더캣 기반의 분산 시계 동기화를 위한 방법이 기록된 컴퓨터 판독 가능한 기록매체.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1020160067212A KR20170135384A (ko) | 2016-05-31 | 2016-05-31 | 이더캣 기반의 분산 시계 동기화를 위한 장치, 이를 위한 방법 및 이 방법이 기록된 컴퓨터 판독 가능한 기록매체 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1020160067212A KR20170135384A (ko) | 2016-05-31 | 2016-05-31 | 이더캣 기반의 분산 시계 동기화를 위한 장치, 이를 위한 방법 및 이 방법이 기록된 컴퓨터 판독 가능한 기록매체 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| KR20170135384A true KR20170135384A (ko) | 2017-12-08 |
Family
ID=60920200
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1020160067212A Withdrawn KR20170135384A (ko) | 2016-05-31 | 2016-05-31 | 이더캣 기반의 분산 시계 동기화를 위한 장치, 이를 위한 방법 및 이 방법이 기록된 컴퓨터 판독 가능한 기록매체 |
Country Status (1)
| Country | Link |
|---|---|
| KR (1) | KR20170135384A (ko) |
Cited By (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN108445830A (zh) * | 2018-03-13 | 2018-08-24 | 大连理工大学 | 一种基于多控制器同步控制的造波机控制系统 |
| CN112147956A (zh) * | 2019-06-26 | 2020-12-29 | 丰田自动车株式会社 | 分布式控制系统 |
| KR20210026241A (ko) | 2019-08-29 | 2021-03-10 | 주식회사 효원파워텍 | 이더캣 네트워크 기반의 외부프로세서 시계 동기화 시스템 및 방법 |
| CN116366192A (zh) * | 2023-01-16 | 2023-06-30 | 集美大学 | 一种多点同步测量桥梁振动的测量系统、方法及设备 |
| KR20240063516A (ko) | 2022-11-03 | 2024-05-10 | 한국로봇융합연구원 | 다중 매니퓰레이터를 이용한 유압 시스템 |
| CN121037263A (zh) * | 2025-08-22 | 2025-11-28 | 深圳市信冠机电有限公司 | 多设备协同的联机控制系统及方法 |
-
2016
- 2016-05-31 KR KR1020160067212A patent/KR20170135384A/ko not_active Withdrawn
Cited By (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN108445830A (zh) * | 2018-03-13 | 2018-08-24 | 大连理工大学 | 一种基于多控制器同步控制的造波机控制系统 |
| CN108445830B (zh) * | 2018-03-13 | 2020-11-06 | 大连理工大学 | 一种基于多控制器同步控制的造波机控制系统 |
| CN112147956A (zh) * | 2019-06-26 | 2020-12-29 | 丰田自动车株式会社 | 分布式控制系统 |
| KR20210026241A (ko) | 2019-08-29 | 2021-03-10 | 주식회사 효원파워텍 | 이더캣 네트워크 기반의 외부프로세서 시계 동기화 시스템 및 방법 |
| KR20240063516A (ko) | 2022-11-03 | 2024-05-10 | 한국로봇융합연구원 | 다중 매니퓰레이터를 이용한 유압 시스템 |
| CN116366192A (zh) * | 2023-01-16 | 2023-06-30 | 集美大学 | 一种多点同步测量桥梁振动的测量系统、方法及设备 |
| CN121037263A (zh) * | 2025-08-22 | 2025-11-28 | 深圳市信冠机电有限公司 | 多设备协同的联机控制系统及方法 |
| CN121037263B (zh) * | 2025-08-22 | 2026-05-12 | 深圳市信冠机电有限公司 | 多设备协同的联机控制系统及方法 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US9398080B2 (en) | Control device, image processing device, control method, computer-readable recording medium, and program | |
| KR102013617B1 (ko) | 시간 동기화 방법 및 그 장치 | |
| JP6192995B2 (ja) | 通信装置、通信システム、通信方法およびコンピュータプログラム | |
| EP3261275B1 (en) | Method for clock synchronization of an industrial internet field broadband bus | |
| US12166850B2 (en) | Control system, information processing device, and non-transitory computer readable medium | |
| US9270481B2 (en) | Communication system and method for isochronous data transmission in real time | |
| US10763868B2 (en) | Decentralized synchronization of multiple agents | |
| JP2022093387A (ja) | 制御システム、装置および制御方法 | |
| KR102291573B1 (ko) | 이더캣 기반의 슬레이브 시스템에 포함된 복수의 마이크로 프로세서간 동기화 방법 및 시스템 | |
| US20190229885A1 (en) | Computing device and control system | |
| KR102614829B1 (ko) | 클럭 동기화 장치 및 방법 | |
| WO2022097215A1 (ja) | 中継装置、時刻同期システム、及びプログラム | |
| JP5675703B2 (ja) | 通信装置、制御装置及びプログラム | |
| KR101492910B1 (ko) | 이더캣 기반의 분산 시계 동기화를 위한 방법 및 시스템 | |
| Gutiérrez et al. | Time synchronization in modular collaborative robots | |
| JP4961589B2 (ja) | ネットワークシステムおよびスレーブ同期方法 | |
| KR101379248B1 (ko) | 이더넷 통신 시스템 및 시간 동기화 방법 | |
| JP6400553B2 (ja) | ユニット間での同期制御機能を有する数値制御システム | |
| CN119052914A (zh) | 时钟同步方法、终端站、管理站、存储介质和程序产品 | |
| WO2019176287A1 (ja) | 制御装置、制御システム、制御方法、および、制御プログラム | |
| CN113228564B (zh) | 一种打戳处理方法及装置 | |
| US20170117980A1 (en) | Time synchronization for network device | |
| CN108683470B (zh) | 一种获取和更新透明时钟的电路及方法 | |
| KR102064575B1 (ko) | 디바이스 간의 시각 동기 정밀도를 향상시키는 방법, 장치, 시스템 및 컴퓨터 프로그램 | |
| CN115208505A (zh) | 时间同步方法及时间同步装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20160531 |
|
| PG1501 | Laying open of application | ||
| PC1203 | Withdrawal of no request for examination |





