KR100966866B1 - 모션 제어 시스템, 모션 제어 시스템의 사용 방법 및 모션 제어 시스템에서 사용하는 컴퓨터 판독 가능한 명령어 - Google Patents

모션 제어 시스템, 모션 제어 시스템의 사용 방법 및 모션 제어 시스템에서 사용하는 컴퓨터 판독 가능한 명령어 Download PDF

Info

Publication number
KR100966866B1
KR100966866B1 KR1020087029454A KR20087029454A KR100966866B1 KR 100966866 B1 KR100966866 B1 KR 100966866B1 KR 1020087029454 A KR1020087029454 A KR 1020087029454A KR 20087029454 A KR20087029454 A KR 20087029454A KR 100966866 B1 KR100966866 B1 KR 100966866B1
Authority
KR
South Korea
Prior art keywords
node
nodes
network
messages
subset
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.)
Expired - Lifetime
Application number
KR1020087029454A
Other languages
English (en)
Other versions
KR20080111167A (ko
Inventor
로버트 피어스
데이빗 클라인
Original Assignee
모션 엔지니어링 인크.
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 모션 엔지니어링 인크. filed Critical 모션 엔지니어링 인크.
Publication of KR20080111167A publication Critical patent/KR20080111167A/ko
Application granted granted Critical
Publication of KR100966866B1 publication Critical patent/KR100966866B1/ko
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0682Clock or time synchronisation in a network by delay compensation, e.g. by compensation of propagation delay or variations thereof, by ranging
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B11/00Automatic controllers
    • G05B11/01Automatic controllers electric
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B15/00Systems controlled by a computer
    • G05B15/02Systems controlled by a computer electric
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/403Bus networks with centralised control, e.g. polling
    • H04L12/4035Bus networks with centralised control, e.g. polling in which slots of a TDMA packet structure are assigned based on a contention resolution carried out at a master unit
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/407Bus networks with decentralised control
    • H04L12/417Bus networks with decentralised control with deterministic access, e.g. token passing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/42Loop networks
    • H04L12/422Synchronisation for ring networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/42Loop networks
    • H04L12/423Loop networks with centralised control, e.g. polling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/062Synchronisation of signals having the same nominal but fluctuating bit rates, e.g. using buffers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0638Clock or time synchronisation among nodes; Internode synchronisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/4026Bus for use in automation systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/04Speed or phase control by synchronisation signals
    • H04L7/08Speed or phase control by synchronisation signals the synchronisation signals recurring cyclically

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • General Engineering & Computer Science (AREA)
  • Small-Scale Networks (AREA)
  • Control By Computers (AREA)
  • Programmable Controllers (AREA)
  • Control Of Multiple Motors (AREA)
  • Vehicle Body Suspensions (AREA)
  • Control Of Stepping Motors (AREA)

Abstract

각각의 제1 및 제2 액츄에이터의 작동 모션을 규정하기 위해 사용되는 제1 및 제2 요구 제어 신호를 발생하도록 구성된 중앙 제어기를 포함하는 모션 제어 시스템 및 방법을 제공한다. 중앙 제어기는 데이터 네트워크에 의해 제1 및 제2 노드와 통신하고, 각각의 노드는 액츄에이터 시간에서 각각의 요구 제어 신호에 기초하여 모션 또는 힘 관련 노력을 구현하도록 구성된 적어도 각각의 액츄에이터를 포함한다. 각 노드는 중앙 제어기와 노드 사이의 신호 전파 지연에 관한 적어도 하나의 각각의 전파 지연 파라미터를 저장하도록 구성된 메모리를 또한 포함한다. 타이밍 기구는 각 노드에서 액츄에이터 시간을 동시에 발생시키기 위해 각각의 전파 지연 파리미터에 기초하여 각 노드에서의 타이밍을 설정한다. 엄격하게 주기적인 및/또는 전이중의 고속 통신이 지원될 수 있다. 네트워크는 연선 케이블 또는 섬유를 이용하여 링 또는 트리로서 배선될 수 있다. 중앙 제어기는 액츄에이터, 서보 모터 드라이브 및/또는 I/O 장치인 각 노드에 요구 신호를 발행한다. 중앙 제어기는 데이터의 동시 획득 및 제어된 동작의 동시 구현이 이루어지도록 하기 위해, 로컬 지연 보정 회로와 함께, 노드에서 사용되는 타이밍 메시지를 또한 제공할 수 있다.

Description

모션 제어 시스템, 모션 제어 시스템의 사용 방법 및 모션 제어 시스템에서 사용하는 컴퓨터 판독 가능한 명령어{A SYSTEM FOR MOTION CONTROL, METHOD OF USING THE SYSTEM FOR MOTION CONTROL, AND COMPUTER-READABLE INSTRUCTIONS FOR USE WITH THE SYSTEM FOR MOTION CONTROL}
본 발명은 복합 머신의 모션 제어에 관한 것으로, 특히 배선을 최소화하면서 중앙 집중식 제어 시스템의 유연성을 유지하도록 설계된 개선된 시스템, 방법, 및 컴퓨터 판독 가능한 명령어에 관한 것이다.
반도체 장치를 처리하고 패키징하는 데에 사용하는 설비와 같은 최근의 제조 설비에 있어서의 가동 부품(moving component)의 제어는 속도와 정확성 모두에 대한 요구가 증가함에 따라 극도로 복잡하게 되고 있다. 이러한 복잡함은, 예를 들면, 서보 모션 제어 시스템에서 사용하는 피드백 제어 루프를 구현할 때 나타난다. 이들 서보 제어 시스템은 복합 머신(complex machine)에서 전형적으로 모션 축(motion axes)이라고 하는 임계 위치 결정 액츄에이터용으로 사용된다.
예시적인 기본 서보 축 모션 제어 시스템(10)의 개략적인 구성이 도 1에 도시되어 있다. 전형적으로, 소망의 모션 경로 프로파일은 동작 전에 또는 시스템 자 극에 응답하여 모션 기획 장치(12)에서 발생된다. 소망의 모션 프로파일은 드라이브(16)에 의해 모터 신호(또는 다른 액츄에이터 신호)로 변환된다. 드라이브(16)는 전형적으로 디지털 모션 프로파일을 아날로그 액츄에이터 드라이브 신호로 변환하기 위해 필요한 디지털 회로와 함께 합성 아날로그 또는 펄스폭 변조(PWM) 증폭기로 구성된다.
소망의 모션 경로 프로파일은 여러 가지 방법으로 설명 및 규정될 수 있다. 예를 들면, '요구 위치'(demanded position)는 액츄에이터(및/또는 피작용물)의 위치와 관련하여 설명되는 소망의 모션 프로파일이다. 이와 다르게, 액츄에이터 및/또는 피작용물의 '요구 속도'(demanded velocity)를 사용할 수도 있고, 속도와 위치의 복합체를 사용할 수도 있다. 전형적으로 광학 모션 엔코더인 위치 측정 장치는 모터(15)의 샤프트 또는 더 정밀한 시스템에서 실제 가동 부품 위치의 실제 모션 경로 프로파일(예컨대 실제 위치 및 또는 실제 속도)를 측정하기 위해 사용된다.
여러 가지 기계적 전기적 에러원(예를 들면 노이즈, 백래쉬, 부품의 휘어짐 등) 때문에, 가끔 소망의 모션 프로파일과 실제의 모션 프로파일 사이에 차이가 나타난다. 예를 들면, 위치/속도 루프에서의 PID(Proportional Integral Differential;비교 적분 미분) 피드백(120)은 요구(demand)와 실제 위치 사이의 오차를 최소화하도록 구동 신호를 조정하기 위해 사용될 수 있다. 많은 고성능 서보 모션 시스템의 알고리즘은 PID 제어에 대하여 양호하게 작동한다. 서보 시스템은 가끔 기계적 공진을 보상하기 위한 필터, 주문형 가속/감속 프로파일 및 모션 시스 템의 속도와 정확성을 최적화시키기 위한 기타 소프트웨어 집약 제어 요소를 포함한다.
드라이브(16)에 입력되는 제어 신호는 일반적으로 전압이고, 대부분의 모터는 입력 전류에 비례하는 토크를 발생한다. 그러므로, 드라이브(16)는 소망의 위치 및/또는 속도를 나타내는 입력 전압을 모터 토크에 대응하는 전류로 가끔 변환시켜야 한다. 이 전압-전류 변환에는 다른 하나의 피드백 요소인 전류 루프(110)를 필요로 하는데, 이것은 선형 증폭기의 입력과 출력 사이의 단순한 배선으로부터 PWM 증폭기의 경우에 있어서의 매우 복잡한 디지털 로직 제어에 이르는 범위를 가질 수 있다.
최근의 모션 제어 시스템은 복잡한 작업을 수행하기 위해 동시에 동작해야 하는 수개의 요소(예컨대 액츄에이터)를 포함할 수 있다. 다시 말해서, 모션 제어 시스템은 수개의 서보 모터(18)(또는 다른 액츄에이터) 및 그에 따른 수개의 제어 축을 포함할 수 있다. 어떤 궤도를 이용하여 언제 어디로 이동할 것인지에 대한 결정은 '모션 기획'(motion planning)이라고 부른다. 모션 제어 시스템은 각 축에 대한 직렬 제어 구조를 또한 포함하고, 이 직렬 구성의 요소들은 전류/토크 제어 루프 및 위치 및/또는 속도 제어 루프를 포함하며, 이들 루프는 직렬 구성의 결합된 또는 별도의 부분일 수 있다.
몇가지 유형의 디지털 네트워크는 모션 제어에 사용하는 것으로 표시되어 있다. 이들 네트워크는 2개의 그룹으로 분리될 수 있으며, 상기 2개의 그룹은 범용 데이터 전송용으로 설계되어 모션 제어에 적용되는 것과 모션 제어 네트워크로서 사용하기 위해 특별하게 설계된 것이 있다.
1. 범용 네트워크
범용 네트워크는 일반적으로 데이터 통신이나 멀티미디어 응용을 위해 설계된 네트워크이고 머신 제어를 행하도록 구성되어 있다. 데이터 통신 네트워크는 효율적이고 신뢰할 수 있는 방법으로 지점에서 지점으로 데이터를 이동시키도록 구성되어 있지만, 이송 적시(timeliness of delivery)에 대해 주의를 거의 또는 전혀 기울이지 않는다. 예를 들어 멀티미디어 네트워크는 CD 플레이어로부터 오디오 증폭기로 8kHz로 데이터를 유출시킨다. 비록 멀티미디어 네트워크가 평균 유출 속도를 보장하기는 하지만, 이 네트워크는 멀티미디어 장치의 양 끝에서 버퍼링되고, 그에 따라서 이송 주기에 있어서의 편차를 허용할 수 있기 때문에 엄격한 주기성을 제공하지 않는다. 따라서, 멀티미디어 네트워크는 실시간 모션 제어 네트워크에 대하여 이상적이지 않다.
ARCNET
ARCNET는 데이터 통신 네트워크이다. 몇몇 회사들은 ARCNET에 기초한 모션 제어 네트워크를 갖고 있는 것으로 알려져 있다(ATA/ANSI 878.1, 2 및 3). ARCNET는 엄격한 주기적 메시지 통지(messaging)를 제공하도록 작동할 수 있는 중속 토큰 버스 네트워크이다. 그러나, ARCNET를 사용하는 데는 몇가지 제한이 있다. 첫 번째 제한은 토크/전류 요구를 송출하기에 충분히 고속이지 않은 보통의 비트 속도(10Mbit/s)이다. 더욱이, ARCNET의 속도는 기초적인 재설계없이 구리를 통해 100Mbit/s로 업그레이드될 수 없다.
ARCNET는 연선 구리(twisted pair copper)를 사용할 수 있지만 스크램블링이 없고, 따라서 데이터 전송은 잠재적으로 전자기 간섭을 야기할 수 있다. ARCNET는 물리적 링으로서(또는 버스로서) 동작할 수 있지만 링크가 끊어진 후에는 동작할 수 없다. 또한 오류가 어디에서 발생하는지 보고할 수가 없고, 이것에 의해 자동 및 원격 오류 진단을 방해한다. ARCNET는 자동 목록화(auto-enumeration) 구조를 갖고 있지 않고, 따라서 머신을 중개(commission)하는데 필요한 시간을 증가시킨다. 반이중(half-duplex) 방식인 ARCNET는 명령어와 피드백 데이터를 동시에 운반할 수 없다. ARCNET는 토큰 통과 방식(token-passing scheme)을 이용하는데, 이 방식은 토큰 손실이 있는 경우 네트워크가 토큰을 재생성하는 구성 처리를 재시작하도록 하기 때문에 전자기 간섭이 있는 경우에 시분할 다중화 방식보다 본래 더 강하지 않다. ARCNET는 전파 시간 보정 구조를 갖고 있지 않기 때문에, 중간적인 개수의 노드를 짧은 사이클 시간에 사용하는 경우 심각한 데이터 스큐를 받게 된다.
IEEE Std 1394-1995와 prEN1394b
이 네트워크는 멀티미디어 응용을 위해 구성된 것이고 트리 토폴로지를 갖고 있다. 제안된 1394b 버전은 섬유와 연선 구리층을 모두 갖도록 되어 있는데, 최근에는 실용화가 감소되었다. 이 네트워크는 100Mbit/s 이상에서 동작하도록 제안되어 있다.
1394는 주기성을 갖도록 제안되었지만 엄격한 주기성을 갖는 것은 아니다. 이것은 주기적 데이터에 대한 속도를 보장하도록 제안되어 있지만, 네트워크 트래픽(network traffic)에 따라 주기적 데이터의 전송을 지연시킬 것이다. 제안된 1394는 8kHz 주기 속도로 제한되지만, 모션 제어 시스템에서 토크/전류 요구를 갱신하기 위해서는 16kHz 이상의 속도가 필요하다. 1394b는 물리적 및 데이터 링크층에서는 전이중(full-duplex)으로서 제안되지만 응용층에서는 반이중으로서만 제안된다. 다시 말해서, 명령어와 피드백 데이터는 동시에 보내질 수 없다. 제안된 1394는 링으로서 동작할 수 없고 파손된 케이블과 같은 오류가 있는 경우에 모든 노드를 동작시킬 수 없다. 제안된 1394는 자동 목록화 및 노드 발견 기능을 갖고 있지만, 불행하게도 이들 기능은 >hot-pluggable=이다(즉, 새로운 노드가 플러그인되거나 제거되는 때에 네트워크가 재목록화된다). 그러므로, 네트워크 내의 노드의 위치는 다른 노드가 동작 중에 절단되는 경우 그 위치가 변경되기 때문에 제어축을 표시하는 데에 신뢰성있게 사용될 수 없다. 제안된 1394는 동기화 메시지가 네트워크의 상이한 지점에 상이한 시간에 수신되는 상황을 취급하기 위한 시간 보정 구성을 갖고 있지 않기 때문에, 중간적인 개수의 노드가 짧은 주기 시간에 사용되는 경우에 심각한 데이터 스큐를 받게 된다. 그러나 기존의 1394와 제안된 1394b는 동기화 메시지 전송에 있어서의 지연에 대한 보정이 가능하다.
이더넷-IEEE 802.3-1998
이 범용 네트워크는 데이터 통신 응용을 위해 구성되었고 100Mbit/s 이상에서 동작하는 계단식(tiered) 허브 토폴로지를 갖는다. 본 발명의 일실시예에서 네트워크를 구성하기 위해 점대점 물리층(point-to-point physical layer)을 사용할 수 있다.
이더넷은 고유의 주기적 메시지 통지 기능이 없다. 이더넷은 또한 전이중 링 으로서 동작할 수 없고, 따라서 링크가 끊어진 후에 모든 노드를 동작시키는 수단을 갖고 있지 않다. 이더넷 네트워크는 그와 같은 오류가 발생한 경우에 보고할 수 있는 공지의 구현 방법이 없으므로 자동 및 원격 오류 진단이 금지된다. 이더넷은 위치에 기초하여 노드 번호들을 할당할 수 없기 때문에 자동 목록화를 위한 적당한 기구가 없다. 이더넷은 통상적으로 반이중 방식이고, 전이중 동작은 고비용이고 복잡하며 스위치를 사용함에 있어서 임시적 불확실성을 야기한다. 이더넷은 시간 보정 기구가 없다.
2. 모션 제어용으로 특별히 설계된 네트워크
상기 다수의 네트워크의 기술적 상세는 회사 비밀로서 유지되고 있고 단지 일부만이 공개되어 있다. 이들 네트워크 중 2개만이 단지 19 바이트의 전신 크기(telegram size)를 갖는 4개의 축에 대하여 8kHz의 갱신 속도를 달성하는 매우 적당한 목적에 부합시키기 위해 필요한 10Mbit/s 이상의 버스 속도를 갖고 있다.
SERCOS
주기적인 시간 영역 다중화 메시징의 개념은 SERCOS 네트워크와 함께 발생하였고 그 후에 IEC 61491로서 편찬되었다. SERCOS는 단일 광섬유 링으로 구현되고, 반이중성이며, 최대 16Mbit/s에서 동작할 수 있다. 이 네트워크가 공작 기계 및 자동화 조립 라인과 같은 특정의 산업 분야에서 사용될 수 있지만, 몇 가지 심각한 제한을 갖고 있다.
수 개 이상의 노드를 가진 네트워크에 있어서, 최대 16Mbit/s의 SERCOS 비트 속도는 네트워크 사이클 시간을 중간적인 1ms로 실질적으로 제한한다. 이러한 중간 적인 네트워크 사이클 시간은 위치 피드백 루프가 모션 제어기에서 중심적으로라기 보다는 드라이브에서 폐쇄되어야 한다는 것을 의미한다. SERCOS 네트워크는 따라서 (전자식 기어박스와 캠의 중앙 집중식 구현을 포함하여) 축간 결합(inter-axis coupling)의 실행성 및 궤도의 비행 변화에 대한 실행성을 제한한다. 중간적인 비트 속도는 또한 16개 이상의 축을 필요로 하는 많은 애플리케이션이 있을 때에 네트워크에 부착될 수 있는 축의 수를 약 16으로 제한한다. SERCOS는 구리 전송 매체로는 동작하지 않기 때문에 비용이 크게 증가되고, 네트워크 매체가 케이블 리트랙터와 같은 가요성 중계 회선(trunking)을 통하여 라우트되어야 할 경우에 애플리케이션에서 문제를 갖는다. 이것은 섬유의 장기간 만곡 특성이 열악하다는 사실에 기인한다. SERCOS는 또한 링크가 끊어진 후에는 동작하지 않고, 오류가 어디에서 발생하였는지에 대한 보고도 행하지 않는다. 마지막으로, SERCOS는 자동 목록화 구조를 갖고 있지 않고 DIP 스위치에 의존하여 노드를 식별한다.
MACRO
MACRO는 델타 타우 인코포레이티드(Delta-Tau Inc.)에서 도입한 독점적 네트워크이다. 이것은 단일 광학 링에서 100Mbit 데이터를 전송하기 위해 FDDI 광섬유 물리층을 사용한다. MACRO는 CRC가 아닌 체크섬에 기초한 약한 에러 검출 기구를 갖고 있다. March 1999 명세서에 따르면 MACRO는 장거리(100m) 구리 매체를 갖고 있지 않다. MACRO는 트리 토폴로지에서 또는 오류가 있는 경우에 동작할 수 없고 노드 발견 및 자동 목록화 능력이 없다. 이것은 MACRO가 시간 보정 기구를 갖고 있는지 불확실하고, 따라서 동일한 중간적인 개수의 노드를 짧은 사이클 시간에 사용 하는 경우에 심각한 데이터 스큐를 받을 수 있다.
따라서, 본 발명의 목적은 모션 제어 시스템, 모션 제어 시스템을 사용하는 방법, 및 모션 제어 시스템을 동작시키고 모션 제어 시스템의 배선 필요성을 감소시킴과 동시에 모션 제어 시스템의 중앙 집중식 제어를 유지하는 명령어를 저장하는 컴퓨터 판독 가능한 매체를 제공하는 것이다.
본 발명의 이러한 목적 및 다른 목적은 신규의 시스템, 그 시스템을 사용하는 방법, 및 모션 제어 시스템을 구현시키기 위한 명령어를 저장하는 컴퓨터 프로그램 제품을 제공함으로써 본 발명에 따라 달성된다. 이 모션 제어 시스템은 각각의 제1 및 제2 액츄에이터의 작동 모션을 규정하는 제1 및 제2 요구 제어 신호를 발생하도록 구성된 중앙 제어기와; 상기 중앙 제어기와 통신하며, 각 노드가 각각의 요구 제어 신호에 기초하는 동작을 액츄에이터 시간에 구현하도록 구성된 적어도 각각 하나의 액츄에이터, 및 상기 중앙 제어기와 노드 사이의 신호 전파 지연에 관련된 적어도 하나의 각각의 전파 지연 파라미터를 저장하도록 구성된 메모리를 포함하는 제1 및 제2 노드와; 각 노드에서의 액츄에이터 시간이 동시에 발생하도록 각각의 전파 지연 파라미터에 기초하여 각 노드에서 타이밍을 설정하도록 구성된 타이밍 기구와; 상기 제1 및 제2 노드를 중앙 제어기와 통신 상태로 유지하도록 구성된 데이터 네트워크를 포함한다.
데이터 네트워크를 통해 중앙 제어기와 통신하도록 구성된 노드는 데이터 네 트워크를 통해 중앙 제어기와 노드 사이의 전파 지연에 관한 지연 보정 신호를 저장하도록 구성된 지연 보정 메모리와; 저장된 지연 보정 신호에 기초하여 액츄에이터 시간에서 모션 또는 힘 관련 노력(force-related effort)을 구현하도록 구성된 액츄에이터를 포함할 수 있다. 동작 중에 전이중 데이터 네트워크를 통하여 중앙 제어기와 통신하도록 구성된 노드는, 상기와는 다르게, 데이터 네트워크를 통하여 제1 방향을 따라 송신된 제1 신호를 수신하도록 구성된 제1 수신기와; 데이터 네트워크를 통하여 제2 방향을 따라 송신된 제2 신호를 수신하도록 구성된 제2 수신기와; 수신된 제1 신호 및 제2 신호 중의 하나에 기초하여 동작을 구현하도록 구성된 액츄에이터를 포함할 수 있다.
모션 제어 시스템의 복수의 액츄에이터의 동작은 중앙 제어기와 복수의 액츄에이터 중의 각 액츄에이터 사이의 각각의 전파 지연을 결정하고, 각 액츄에이터에 대하여 상기 결정된 각각의 전파 지연에 기초하여 복수의 액츄에이터 중의 각 액츄에이터의 동작을 타이밍 설정함으로써 동기화될 수 있다.
모션 제어 시스템 내의 중앙 제어기에 의해 제어되는 복수의 노드는 네트워크 내의 중앙 제어기와 각 노드를 연결하고, 중앙 제어기로부터의 질의 메시지를 네트워크를 따라 송신하며, 네트워크 내의 복수의 노드 중의 한 노드에서 상기 질의 메시지를 수신하고, 상기 질의 메시지에 대한 응답 메시지(이 응답 메시지는 노드를 목록화함)를 네트워크를 따라 상기 노드로부터 중앙 제어기로 송신하고, 상기 응답 메시지를 중앙 제어기에서 수신하고, 네트워크를 따라 중앙 제어기로부터의 질의 메시지를 재송신하고, 재송신된 질의 메시지를 목록화된 노드를 통하여 추가 의 노드로 릴레이하고, 상기 질의 메시지에 대한 추가의 응답 메시지(이 추가의 응답 메시지는 상기 추가 노드를 목록화함)를 네트워크를 따라 상기 추가 노드로부터 상기 목록화된 노드를 통하여 상기 중앙 제어기로 송신함으로써 자동 목록화될 수 있다.
더욱이, 중앙 제어기에 의해 제어되는 링 네트워크 내의 복수의 노드의 동작은 상기 링 네트워크를 따라 제1 방향으로 복수의 각 노드로 향해 제1 메시지를 송신하고, 송신된 제1 메시지에 응답하여 상기 링 네트워크를 따라 제2 방향으로 상기 복수의 노드에 의해 송신된 제1 회신 메시지를 모니터링하고, 제1 메시지가 송신된 각각의 노드로부터 상기 제1 회신 메시지가 수신되지 않았을 때 상기 제1 회신 메시지를 송신하는 노드로부터 각 노드의 제1 서브셋을 식별하여, 이것에 기초해서 각각의 제1 회신 메시지를 송신하지 않은 노드로부터 상기 각 노드의 제1 서브셋을 제외한 각 노드의 제2 서브셋을 결정하며, 제1 메시지가 송신된 각각의 노드로부터 제1 회신 메시지가 수신되지 않은 때에 각 노드의 상기 제2 서브셋 내의 각 노드에 어드레스 지정된 제2 메시지를 상기 제2 방향으로 송신하고, 상기 제2 메시지에 응답하여 각 노드의 상기 제2 서브셋의 상기 각 노드에 의해 송신된 제2 회신 메시지(이 제2 회신 메시지는 상기 링 네트워크를 따라 상기 제1 방향으로 이동하는 것임)를 수신하고, 각 노드의 상기 제1 서브셋에 어드레스 지정된 제3 메시지를 상기 제1 방향으로 송신하고, 각 노드의 상기 제2 서브셋에 어드레스 지정된 제4 메시지를 상기 제2 방향으로 송신함으로써, 오류가 있는 경우에도 유지될 수 있다.
마지막으로, 컴퓨터 시스템에서 실행하기 위한 명령어를 저장하는 컴퓨터 판독 가능한 매체는, 컴퓨터 시스템에 의해 실행될 때, 컴퓨터 시스템이 모션 제어 시스템 내의 복수의 액츄에이터의 동작을 동기화시키고, 모션 제어 시스템 내의 중앙 제어기에 의해 제어된 복수의 노드를 자동 목록화하며, 전술한 바와 같이 중앙 제어기에 의해 제어되는 링 네트워크 내의 복수의 노드에 오류가 있는 경우에 그 동작들을 유지하게 할 수 있다.
본 발명의 다른 목적 및 장점들은 첨부 도면과 그에 대한 기술적 설명을 참조함으로써 명백히 이해할 수 있을 것이다.
본 발명의 의해 모션 제어 시스템, 모션 제어 시스템을 사용하는 방법, 및 모션 제어 시스템을 동작시키고 모션 제어 시스템의 배선 필요성을 감소시킴과 동시에 모션 제어 시스템의 중앙 집중식 제어를 유지하는 명령어를 저장하는 컴퓨터 판독 가능한 매체를 제공할 수 있다.
첨부 도면을 참조함에 있어서, 동일한 참조 번호는 전체 도면에 걸쳐서 동일하거나 대응하는 부분을 나타내고, 특히 도 2에는 일반적인 2축 제어 시스템이 각각의 요소들을 직렬 접속한 형태로 도시되어 있다. 각각의 영역(2A, 2B, 2C, 2D, 2E)은 제어 시스템의 요소들을 나타낸다. 즉, 2A는 예시적인 시스템 호스트 및 인간/머신 인터페이스를, 2B는 모션 기획 장치를, 2C는 예시적인 위치 제어 요소를, 2D는 예시적인 속도 제어 요소(피드백 라인의 미분기(24) 포함)를, 2E는 예시적인 전류/토크 제어 요소를, 2F는 예를 들어 신호 증폭기(26), 모터/액츄에이터(27), 및 위치, 속도, 및/또는 가속도 변환 요소(28)를 포함하는 예시적인 구동 유닛을 나타낸다. 비록 각각의 제어 요소로의 피드백에 PID(Proportional Integral Differential;비례 적분 미분)를 포함하는 것으로 도시되어 있지만, 다양한 형태의 디지털 보상 요소가 사용될 수 있다. 사용하는 실제의 디지털 보상 요소는 직렬 구성의 제어 요소의 위치 및 제어 시스템 응용에 따라 달라질 수 있다.
또한, 일부의 모션 제어 시스템은 액츄에이터에 일련의 이산 신호를 제공함으로써 동작한다. 그러한 신호의 예로는 스텝(Step), 방향(Direction) 및 시계 방향/반시계 방향(Clockwise/Counterclockwise) 신호가 있다. 이러한 시스템에 있어서는 폐루프 피드백이 필요하지 않거나, 또는 드라이브에서 폐루프 제어를 행하고 그 드라이브는 모션 제어기로부터의 이산 신호에 의해 제어된다. 이 시스템들은 직렬 접속된 많은 요소들을 여전히 갖고 있다. 비록 본 발명에서는 서보 제어 시스템의 예가 사용되지만, 폐루프 피드백은 본 발명의 필수적인 부분이 아니며, 본 발명을 사용하는 이산 액츄에이터를 포함하는 것도 가능하다.
도 2에서는 직렬 접속된 각각의 요소들이 별도의 장치로서 도시되어 있지만, 최근의 제어 시스템을 구현할 때에는 이들 장치들을 한 개 또는 그 이상으로 통합하기도 한다. 예를 들어, 도 1에 도시된 바와 같이, 위치(2C)와 속도(2D) 제어를 하나의 제어기에 통합할 수 있다. 다른 예로서, 모션 제어 시스템의 가장 일반적인 구현예는 '모션 제어기'이고 이것은 일부 실시예에 있어서 모션 기획을 위해 시각 시스템, 디스플레이 등과 같은 다른 머신 제어 기능을 또한 감독할 수 있는 시스템 호스트(퍼스널 컴퓨터 등)와 그 자체가 통신할 수 있는 중앙 처리기 유닛에서 구동하는 프로그램을 포함한다. 이들 시스템에 있어서, 모든 모션 기획은 모션 제어기에서 실행될 뿐만 아니라 적어도 일부의 직렬 제어 구조가 모션 제어기에서 또한 구현될 것이다. 모션 제어기에서 구현되는 직렬 제어의 부분은 공통적으로 위치 제어 루프만을 포함하거나 위치 및 속도 제어 루프를 둘 다 포함하고, 이것은 도 2에 2C와 2D로서 각각 표시되어 있다. 최고 성능의 현재의 모션 제어기는 시스템 호스트의 버스상에 존재하는, 관련 모션 프로그래밍 인터페이스와 함께 전용 모션 제어 프로세서 인쇄 회로 카드에 의해 형성된다. 결합 호스트/보드 레벨 모션 제어기는 도 2에 유닛 2A, 2B, 2C 및 2D로 표시된 모든 작업을 수행한다. 이러한 모션 제어기는 모든 모션 기획 결정이 중앙 집중적으로 취해지고 모든 데이터가 중앙 집중적으로 수집되며 거의 모든 제어 루프가 중앙 집중적으로 폐쇄되기 때문에 일반적으로 중앙 집중식 모션 제어 시스템이라고 부른다. 따라서 도 2의 유닛 2C 또는 2D는 모션 제어기에서 구현되는 직렬 제어의 범위를 나타낸다. 실제의 중앙 집중식 모션 제어 시스템에 있어서, 제어 신호는 모션 제어기로부터 드라이브로 보내지는 아날로그 또는 펄스 요구 신호이고, 위치 피드백 신호는 모터(27)상의 변환기(28)로부터 복귀된다(아마 드라이브를 통해 라우트될 것이다).
비록 상기한 것들이 수천 개의 동작 머신에서 모션 제어 시스템의 기초적인 동작 플랫폼으로서 작용하지만, 이러한 플랫폼들은 많은 단점을 갖는 것으로 인식되고 있다. 먼저, 케이블링(전체 14 내지 20 또는 그 이상의 종단에 있어서 요구 케이블, 피드백 케이블, 및 I/O 케이블과 커넥터 B)의 비용이 매우 높다. 특히 다 축용 제어 신호들이 드래그 체인 또는 케이블 리트랙터를 통하여 라우트되어야 하는 경우에 케이블링의 설치는 매우 어렵고 부피가 크다. 예를 들어서, 드래그 체인은 전형적으로 신호가 XY 스테이지상에 걸려 있는 머신 헤드와 같은 가동 제어 요소로 라우트되어야 할 때 사용된다. 따라서, 드래그 체인은 가끔 고속으로 움직인다. 머신 헤드(피크/플레이스 헤드 등)가 서보 모터를 사용하면, 드래그 체인은 다수의 배선을 가짐으로써 매우 완고하고 대형으로 될 것이다. 더욱이, 이러한 모션 제어 시스템은 증폭기 또는 모터로부터의 변환기(위치) 피드백 신호 이외의 데이터 수집을 위한 기구를 제공하지 않는다. 모션 제어 시스템에서의 문제점의 다른 예로서, 모션 제어기와 드라이브 사이의 거리가 실제 조건으로서 제한된다.
이러한 이유 및 다른 이유들 때문에, 모션 제어 시스템에서 디지털 네트워크를 채용하는 경향이 증가하고 있다. 적절하게 구현된 디지털 네트워크는 모터/드라이브/위치 센서로부터 호스트로 축당 14~20 또는 그 이상의 라인들을 라우트할 필요성을 제거한다. 그 대신, 하나의 얇은 2쌍 네트워크 케이블이 모든 로컬 제어 노드를 호스트에 접속한다. 로컬 노드를 사용하면 14~20 또는 그 이상의 라인들이 모터를 바로 가까이에 둘러싸고 있는 영역으로 제한될 수 있다. 따라서 배선의 수 및 복잡성을 감소시키는 것은 매우 극적인 것이다. 이러한 시스템은 네트워크들이 제어 기능을 중앙으로 집중시키거나 각 노드에 분산시키기 위해 사용될 수 있기 때문에 용어 '네트워크 제어 시스템'이 더 정확하지만 일반적으로 '분산형 모션 제어 시스템'이라고 부른다.
분산형 모션 제어 시스템은 기초적인 직렬 제어 구조를 유지하지만, 도 2의 적어도 2개의 요소(2A, 2B, 2C, 2D, 2E) 사이에 2라인의 디지털 통신 경로(예를 들면 네트워크)를 삽입한다. 분산형 모션 제어 시스템을 설계하는 경우에는 직렬 제어 시스템에서 네트워크의 위치에 관련한 많은 선택이 가능하다. 각각의 위치들은 모두 동일한 배선수의 감소를 달성할 수 있지만, 시스템 설계와 성능에 있어서 중대한 차이를 발생한다.
네트워크의 첫번째 공통 위치는 도 2의 유닛 2A와 2B 사이에 있다. 이 경우에 유닛 2B, 2C, 2D, 2E 및 2F는 축을 기준으로 하여 별도의 네트워크 드라이브 유닛으로 분할된다(도면에서 수평으로). 이 위치에서 네트워크를 사용하면 각각의 축에 대한 모든 직렬 제어가 관련 모션 기획과 함께 그 자체의 드라이브로 이동한다. 결과적인 제어 시스템의 드라이브들은 '스마트 드라이브'라고 부르고, 네트워크는 스마트 드라이브를 호스트(도 2의 2A)로 연결하기 위해 사용된다. 이러한 구성은 만족스럽게 작용할 수 있고, 각각의 축에 대한 모션 기획, 즉 직렬 제어가 독립적으로 될 수 있게 한다. 다시 말해서, 이러한 구성을 사용할 수 있게 하기 위해 (통합된 다축 이동을 수행하기 위해 필요한) 축간 결합(inter-axis coupling)의 필요성이 거의 또는 전혀 없어야 한다. 모든 고속 제어 루프가 드라이브 내에 있기 때문에, 네트워크를 횡단하여 전송된 피드백 신호는 없고 중간 대역폭 네트워크이면 적당하다.
그러나, 많은 머신들 및 제조 공정에서는 예컨대 통합 다축 이동을 구현하고, 전자식 기어박스를 실현하며, 비행 궤도를 변경하고 최적 시간 이동을 달성하기 위하여 엄격한 축간 결합을 필요로 한다. 그러한 머신들의 예로는 표면 장착된 전자 부품들에 대한 피크(pick) 및 플레이스(place) 머신과 반도체를 처리하고 패키징하는데 사용되는 머신이 있다. 그러한 경우에, 모션 기획은 하나 이상의 축에 따른 동시 동작이 필요할 뿐만 아니라 직렬 제어 시스템이 하나의 축으로부터 다른 축(도 2에는 간단히 하기 위해 도시 생략함)까지의 기간을 또한 통과할 수 있다. 그러므로, 중앙 모션 제어기의 유연성을 유지하는 것이 가끔 필요하다.
다수의 스마트 드라이브를 사용하여 다축 모션 제어 시스템을 구현하는 데는 다른 문제점들이 있다. 첫번째 문제점은 추가의 책임을 드라이브로 이송함으로써 추가의 하드웨어가 각각의 드라이브에 부가된다는 것이다. 이 하드웨어는, 예를 들면, 추가의 프로세서(들) 및 메모리뿐만 아니라 I/O 및 디스플레이와 같은 다른 구성들이다. 따라서, 시스템 레벨에 있어서 많은 이러한 하드웨어 및 그 기능들은 사용되지 않거나 여분의 것이지만, 여전히 구입하지 않으면 안되고 드라이브에 공간이 설치되어 있어야 한다. 두번째 문제점은, 스마트 드라이브에서 최근 개발 중에 있기는 하지만, 각각의 스마트 드라이브에 대하여 별도의 프로그램을 기록 및 유지해야 한다는 것이다. 더욱이, 이것은 모든 드라이브에 대하여 표준화된 프로그래밍 환경이 없는 상태에서 행하여져야 한다. 이용 가능한 보드 레벨 제어기의 주요 판매자가 제공하는 'C'(또는 다른 고레벨 프로그래밍 환경) 컴파일러는 더 이상 존재하지 않고, 따라서 스마트 드라이브와 통신하는 표준화된 방법도 없다. 또다른 중요한 단점은 스마트 드라이브가 단순한 드라이브보다 소형화하기에 더 어렵다는 것이다. 이 때문에 분산형 모션 시스템에 가능한 최적의 배선 감소를 달성하기가 어렵고, 고속 SMT 머신의 피크/플레이스 헤드에 장착하기에 충분할 정도로 소형인 기 존의 고성능 스마트 드라이브가 없으며, 따라서 스마트 드라이브는 이 응용을 위한 드래그 체인에서의 배선 수를 더 낮추지 못한다.
따라서 다축 제어 시스템의 중심에 제어 기능을 집중시키는 경우가 강제된다. 이것에 따른 문제점은 네트워크에 대한 추가의 요구가 있기 때문에 소망하는 배선 감소를 달성하기 위하여 상기 중앙 집중된 모델이 드라이브로 네트워크 접속을 행하도록 하기 어렵다는 것이다.
네트워크의 제2 공통 위치는 도 2의 유닛 2C와 2D 사이에 또는 2D와 2E 사이에 존재한다. 이 위치는 제어 기능의 중앙 집중화를 유지하고 배선 감소 및 데이터 수집을 달성하기 위해 네트워크만을 사용한다. 이 위치에서 네트워크를 사용함으로써 네트워크를 모션 제어기와 드라이브 사이에 직렬 제어를 따라 위치시킬 수 있다. 네트워크는 디지털이기 때문에, 모션 제어 시스템은 사실 샘플화 데이터 시스템이다. 모션 기획 장치(motion planner)는 통상 속도(전형적으로 1~4kHz 범위의 값)로 요구(demand)를 제공하고, 직렬 제어 시스템의 제어 루프는 더 빨리(전형적으로 위치 루프의 경우에는 1~4kHz, 속도 루프의 경우에는 2~8kHz) 동작하며, 전류 루프는 16kHz 또는 그 이상으로 동작한다.
가변적인 수송 지연에 의해 야기될 수 있는 불확실성을 제거하기 위하여, 각종 요소에 대한 샘플화 데이터 시스템에 있어서 동기적으로 동작하는 것이 바람직하고, 이것은 네트워크 샘플화 데이터 시스템에 있어서 공통 네트워크 시간 기준이 있어야 한다는 것을 의미한다. 공통 네트워크 시간을 발생시키는 한가지 공지의 방법은 모션 제어기가 타이밍 기준 메시지를 정규의 간격으로 방출하고, 그 다음에 각각의 수신 노드가 이 신호를 이용하여 훨씬 더 높은 국부 주파수원으로부터 유도된 로컬 클럭을 조정(calibrate)하는 것이다. 상기 로컬 클럭은 PWM 및 모든 국부 제어 루프에 대한 타이밍 기준으로서 사용된다. 전형적으로 네트워크 타이밍 기준의 다중화는 위상 동기 루프를 이용하여 수행된다. 이 때문에, 네트워크 타이밍 기준상의 임의의 지터가 모든 관련 로컬 클럭으로 전파될 것이므로 엄격히 주기적인 메시지 통지가 요구된다. 더욱이, 물리적으로 대형인 네트워크(또는 메시지가 다수의 리피터를 통과하는 네트워크)에 있어서, 각 노드로의 전파 지연이 중요하고 노드마다 다를 수 있으며, 이것은 지연을 야기하여 노드 클럭에 불일치성을 야기할 수 있다.
도 3은 전이중 링 토폴로지로 케이블 접속된 본 발명에 따른 모션 제어의 예시적인 네트워크(30)를 도시한 것이다. 도시된 링 토폴로지는 각 노드에서 허브 또는 여분의 포트를 필요로 하지 않기 때문에 트리보다 더 값이 싸고, 따라서 통상적으로 바람직하다. 이러한 모션 제어 네트워크(30)의 물리층은 예를 들면 IEEE 802.3-1998, 24~26절에 개시된 것과 같은 공지의 데이터 전송 네트워크에 기초할 수 있다. IEEE 802.3-1998, 24~26절은 ANSI X3.263-1995에 기초하고, 따라서 섬유 또는 구리 전송 매체의 선택이 제공된다. 이러한 물리층은 일반적으로 100BASE-X라고 알려져 있지만, 배선 토폴로지는 IEEE 802.3-1998, 24~26절을 따르지 않는다.
모션 제어 네트워크(30)는 도 3에 도시된 바와 같은 노드(32, 34)(슬레이브라고도 함)를 포함하고 있고, 이 노드는 도 3에 도시되어 있는 바와 같이 한 쪽에서 네트워크 링크(2)에 의해 서로 접속되며 다른 쪽에서 네트워크 링크(1, 3)에 의 해 마스터(모션 제어기)(36)에 접속되어 있다. 부가 노드들은 부가 링크에 의해 링 토폴로지에 추가될 수 있다. 부가 노드를 추가하면 노드가 다른 노드에만 접속되고 마스터(36)에는 접속되지 않는다. 이러한 예시적 실시예의 네트워크(30)는 엄격히 마스터-슬레이브이다. 마스터(36)는 모든 통신을 시작한다. 슬레이브 노드(32, 34)는 마스터(36)에 응답하고 서로 통신하지는 않는다. 마스터(36)는 또한 하나 이상의 노드(32, 34)에 대하여 방송할 수 있다.
각각의 노드(32, 34)와 마스터(36)는 P0 포트(310), Q 포트(320), 적어도 하나의 PHY(physical entity) 장치(330), 및 MAC(medium access controller)(340A, 340B, 또는 340C)를 포함하고 있다. PHY 장치(330)는 일측이 송신/수신 포트에 부착되고 타측이 MAC(340)에 부착된다. PHY 장치(330)는 파트 송수신기, 파트 엔코더/디코더이고 점대점 링크에서 신호를 송신 및 수신한다. 따라서 PHY 장치(330)는 비트 및 심볼의 레벨에서 동작하고, 링 네트워크(30)를 형성하는 선택된 물리층의 적당한 표준에 적합한 실리콘으로서 또는 IP 코어로서 구입할 수 있다. MAC(340A, 340B, 340C)는 한편으로 프로세서(일반적임)와 메시지를 교환하고 다른 한편으로 PHY(330)와 메시지를 교환하는 디지털 로직을 구현한다. MAC(340A, 340B, 340C)는 심볼과 메시지의 레벨에서 동작한다. 마스터 MAC(340C)와 슬레이브 MAC(340A, 340B)는 그 기능이 서로 다르다.
슬레이브에서의 MAC 장치(340A, 340B)는 메시지 발생기로서 동작할 수도 있고 또는 메시지 수신을 반복할 수도 있다. 링 네트워크(30)에 있어서, Q 포트(320)를 통해 PHY(330)에 수신된 메시지는 PHY(330)를 통하여 P0 포트(310)에서 반복되 고, P0 포트(310)를 통해 PHY(330)에 수신된 메시지는 PHY(330)를 통하여 Q 포트(320)에서 반복된다. 예시적인 물리층은 점대점 링크만을 지원한다. 즉, 물리층은 버스로서 배선될 수 없고, 이것은 일반적으로 약 20Mbit보다 더 빠르게 동작하는 모든 물리층에 대하여 진실이다. 그러므로, 주어진 링크의 종단을 넘어서 노드에 의해 수신되는 메시지는 리피터를 통하여 전달되고 재송신되어야 한다. 네트워크는 전이중이므로 리피터는 각각의 방향에 대하여 필요하다.
MAC 장치(340A, 340B, 340C)의 리피터 기능은 각 방향으로 FIFO를 사용하여 구현된다(도시 생략함). 부가 노드로 전신을 전달하는 것 외에, FIFO는 2가지의 다른 목적을 달성한다. 첫째로, FIFO는 수신기의 클럭 범위를 로컬 클럭 범위(이것은 또한 송신기의 클럭임)로부터 분리시킨다. 둘째로, FIFO는 송신 클럭에서의 필연적인 약간의 차이를 허용하고, 데이터의 손실없이 허용되는 클럭 주파수를 수신한다.
FIFO의 필요한 깊이는 클럭 주파수, FIFO 폭(PHY 장치에 따라 통상적으로 4비트 폭임), 및 최대 패킷 사이즈 사이의 최대 편차에 의존한다.
링크 네트워크(30)의 최종 링크는 복귀 링크(3)라고 한다. 복귀 링크(3)는 전이중 방식인 네트워크(30)가 마스터(36)의 P0 포트를 통하여 슬레이브(32, 34)와의 비제한적 통신을 허용하기 때문에 대개 동작 트래픽에 대하여 용장성이다. 그러나, 마스터(36)의 Q 포트로의 복귀 링크(3)는 마스터(36)의 P0 포트로부터 송신된 패킷이 완전한 링 네트워크(30)를 통하여 마스터(36)의 Q 포트로 이동하는 것을 마스터(36)가 입증하도록 하기 위해 필요하다. 유사하게, 마스터(36)의 Q 포트로부터 송신된 패킷은 링 네트워크(30)를 통하여 마스터(36)의 P0 포트에 도달할 것이다. 오류 조건이 발생한 경우에는 어느 메시지가 마스터(36)의 P0 포트(310)와 Q 포트(320)에서 수신되지 못하였는지를 인식함으로써 오류의 위치를 추론하는 것이 가능하다.
네트워크 링크(1, 3)와 P0 포트(310) 및 Q 포트(320)는 상업적으로 구입가능한 항목(PHY, 케이블링, 섬유, 커플러/커넥터)이다. PHY(330), FIFO, 및 MAC 장치(340)는 FPGA 또는 ASIC와 같은 다른 디지털 로직으로 구현될 수 있다. 자동 응답 기구, 로컬 클럭을 생성하기 위한 위상 동기 루프, FPTC/RPTC 시간 보정 기구, 타이머 와치독에 의한 절단 링크의 검출 및 MST 대신 MTT의 후속 사용을 포함한 모든 기능들은 디지털식으로 실현된다.
이러한 네트워크 시스템(30)에 있어서, 마스터(36)(모션 제어기)는 모터 또는 액츄에이터 노드(32 및/또는 34)의 전류/토크 피드백 제어를 수행할 수 있다. 예를 들어, 16 축의 모션 제어를 위한 네트워크 시스템(30)에 있어서, 각 방향으로 24 바이트의 총 전신 크기를 갖는 16kHz 갱신 속도는 적어도 100Mbit/s의 비트 속도를 갖는다. 이것은 전술한 네트워크 시스템(30)의 능력 이내이다.
링 네트워크(30) 내에서의 네트워크 통신은 요구 신호를 제공하기 위해 정규의 간격으로 마스터(모션 제어기)(36)로부터 보내진 짧은 패킷의 형태이고, 피드백 및 모니터링 데이터를 제공하기 위해 정규의 간격으로 노드(32, 34)로부터 마스터(36)로 다시 보내진 짧은 패킷의 형태이다. 네트워크(30)가 삽입되는 직렬 제어의 지점에서 정규 간격을 제어 시스템 루프 속도와 정렬해야 할 뿐만 아니라 모든 요구들이 동시에 효과를 취하고 모든 피드백이 동시에 획득되도록 네트워크 시간이 설정되어야 한다.
마스터(36)로부터 송신되는 전신(4)의 예는 도 4에 도시되어 있다. 이 전신은 어드레스 필드(42)와, 제어 필드(43)와, 데이터 필드(44)와, 프레임 체크 시퀀스(45)를 포함하고 있다. 개시 스트림(41) 및 종료 스트림(46) 델리미터는 전신을 묘사한다.
각각의 어드레스 필드(42)는 전신 내 데이터의 목적지 노드(도 2의 슬레이브 노드(32, 34) 등)를 식별하기 위해 사용될 수 있다. 각각의 슬레이브 노드는 적어도 하나의 슬레이브 어드레스, 즉 그 노드의 베이스 어드레스를 인식한다. 일부 실시예에 있어서, 노드는 예를 들면 서보 축과 같은 하나 이상의 제어 엔티티를 포함할 수 있다. 이 경우에, 슬레이브 노드에 존재하는 각각의 부가적인 제어 엔티티에 대한 부가적인 네트워크 어드레스가 있다. 슬레이브 노드의 베이스 어드레스는 노드 발견 처리 중에 지형학적으로 할당될 수 있고, 부가적인 제어 엔티티의 부가적인 어드레스는 순차적으로 베이스 어드레스를 따를 수 있다. 예를 들어, 2개의 4-엔티티 노드로 구성된 네트워크(30)는 제1 노드에서 [1, 2, 3, 4]로 목록화될 수 있고, 제2 노드에서 [5, 6, 7, 8]로 목록화될 수 있다. 일 실시예에 있어서, 어드레스 필드는 길이가 1바이트이고, 그 의미(소스 노드의 어드레스 또는 목적지 노드의 어드레스)는 전신의 종류에 따라 변화한다.
각각의 제어 필드(43)는 수신 노드에 송신되는 전신(4)의 종류를 표시하기 위해 사용될 수 있다. 더욱이, 상기 제어 필드는 어드레스가 어떻게 해석되는지를 또한 표시할 수 있다. 도 5는 상이한 유형의 네트워크 전신의 예를 표의 형태로 목 록화한 것이다. 편리성을 위해, 작명 규칙(naming convention)은 도 5에 도시된 바와 같이 채택할 수 있고, 여기에서 마스터로부터 발생하는 전신은 증폭기에 대하여 M으로 시작하고 슬레이브로부터 발생하는 전신은 A로 시작한다. 다른 전신 종류가 또한 모션 제어 네트워크의 다른 동작 상태(또는 단계)와 연관될 수 있다. 물론, 이하에서 설명하는 부가적인 기능 또는 기능들의 조합을 수행하는 다른 전신 종류가 네트워크의 능력을 확장하기 위해 부가될 수 있고, 이것은 제어 필드(43)에서 표시될 것이다. 도 5에 도시된 특수한 전신 유형은 본 발명에 따른 네트워크의 일부 통신 능력을 더욱 명확히 하기 위해서만 제공된다.
전신(4)의 각 데이터 필드(44)는 가변 길이를 가지며 마스터(36)와 노드간에 데이터를 통신하기 위해 사용된다. 데이터는 예를 들면 모션 제어용의 액츄에이터 또는 피작동물(actuated object) 위치 정보와 그 자체의 구동 신호를 포함할 수 있다. 현재의 물리층에 대한 기술 상태에 있어서, 비록 설비의 개발에 따라 더 많은 데이터 필드(44)를 사용할 수 있다는 것이 당업자에게는 명백하겠지만, 데이터 필드(44)의 길이에 대하여 제한이 있다. 현재의 제한은 예를 들면 프레임 체크 시퀀스의 효력과 리피터 FIFO의 깊이뿐만 아니라 기타의 전자적 및 동작적 고려 사항에 의해 결정된다. 전형적인 실시예에 있어서, 현재는 2048 바이트가 실용가능한 것으로 고려되고 있다.
프레임 체크 시퀀스(45)는 전형적으로 설비의 오동작 및/또는 전기적 간섭에 기인하여 발생하는 전신(4)에서의 에러를 식별하기 위해 사용된다. 본 발명에서 사용하기에 적합한 프레임 체크 시퀀스는 IEEE802.3-1998 3.2.8 절에 따라 32비트 CRC, 즉,
G(x)=x32+x26+x23+x22+x16+x12+x11+x10+x8+x7+x5+x4+x2+x+1
이며, 그 이유는 이 시퀀스가 물리층의 스크램블러 다항식과 호환가능한 것으로 알려져 있기 때문이다.
도 6의 상태도에 도시된 바와 같이, 네트워크 동작은 2가지 단계(또는 상태), 즉 발견 단계(60)와 동작 단계(62)를 갖는다.
발견 단계(60)는 동작을 설명하고, 이것에 의해 노드(예를 들면 도 3의 노드 32와 34)가 마스터(36)에 의해 발견되고 목록화된다(예를 들면, 어드레스 및 기타 네트워크 파라미터가 할당된다). 발견 단계(60) 중의 통신은 비동기식이고, 슬레이브는 통상적으로 마스터(36)로부터 수신된 것에 응답하여 전신을 보낸다.
반면에, 동작 단계(62)는 주기적 통신이 특징이다. 예를 들어, 마스터는 위치/속도/토크/전류 요구(MDTs)를 운반하는 전신이 후속되는 타이밍 전신(예를 들면 도 5의 MST)을 보내고, 슬레이브는 상태 및 피드백 데이터를 증폭기 전신(ATs)으로서 다시 보낸다.
AT 및 MDT와 같은 전신이 보내지는 정확한 시간은 물리층의 정확한 동작을 위하여 특정 기준과 부합되어야 한다. 그러나, 양자 사이의 관계는 애플리케이션 필요성에 부합하도록 자유롭게 선택될 수 있다. 예를 들면, MDT는 주어진 노드에 대한 AT보다 전에 또는 후에 또는 그와 동시에 보내질 수 있다. 일 실시예에서 모든 AT와 MDT는 타이밍이 정기적으로 갱신될 수 있도록 다음 MST 이전에 완성되어야 한다.
비록 동작 단계(62)가 네트워크를 발견 단계(60)로 복귀시키는데 방해될 수 는 있지만, 발견 단계(60)는 항상 동작 단계(62) 전에 발생한다. 슬레이브 노드는 파워업 직후에는 미발견 상태로 있다. 슬레이브 노드는 또한 예컨대 오류 발견 후에 숨김 패킷(MHT)을 송출하는 마스터(36)에 의해 경로(600)를 따라 이 상태로 강제 복귀될 수 있고, 이 때 슬레이브는 이 패킷을 네트워크를 통하여 전파시킨다. 파워업 후 발견 처리 전의 간단한 네트워크 링(30)은 도 7에 도시되어 있다. 먼저, 슬레이브(32, 34)는 파워업 후에 마스터(36)에 의해 발견되지 않으므로 파선으로 도시되어 있다. 다시 말하면, 마스터(36)는 슬레이브(32, 34)를 식별 및/또는 목록화하지 못한다. 이 때, 마스터는 도 8에 도시된 바와 같이 네트워크 링크(1)에 P0 포트로부터 MQT(도 8에 도시된 마스터 질의 전신)를 발행한다. 네트워크의 제1 슬레이브(34)는 MQT를 수신하지만, 슬레이브(34)가 발견되지 않았기 때문에 슬레이브(34)는 MQT를 따라 통과하지 않는다. 그 대신에, 슬레이브(34)는 마스터(36)에 슬레이브(34)에 대한 특정 정보를 공급하는 AAT(증폭기 응답 전신, 도 9에 도시됨)로 회신한다. 이 정보는 일반적으로 네트워크의 동작에 필요한 정보이고, 예를 들면 노드에 의해 요구되는 슬레이브 어드레스의 수, 제어 엔티티의 수 및 종류 등을 포함한다.
마스터(36)에 의한 MQT의 송신과 슬레이브(34)에 의한 AAT의 수신 사이의 지연은 물리층 클럭과 관련된 불확실성으로 반복 가능하다. 그러므로 MQT의 송신과 AAT의 수신 사이의 지연을 타이밍 설정하고, 그 다음에 MQT 송신 시에 슬레이 브(34)의 알려진 내부 지연을 감산함으로써, 임의의 간섭 노드에서의 케이블링 및 리피터에 의해 야기된 전파 지연은 자동화 수단에 의해 계산될 수 있다. 슬레이브(34)의 알려진 내부 지연은 2가지 요소를 갖는다. 첫번째 요소는 슬레이브(34)의 FIFO에 기인하여 발생한다. 이것은 깊이에 의존하는 고정량(fixed quantity)이다. 두번째 요소는 노드가 AAT로 MQT에 자동 응답하는데 걸리는 시간이다. 이것은 완전 동기 회로의 클럭 사이클의 고정수이다. 따라서, 단지 불확실성의 요소들은 통제 클럭(마스터 및 슬레이브) 및 너무 낮은 정도의 드리프트 및 정확성의 해상도이다. 그럼에도 불구하고, 이러한 알려진 내부 지연은 특정 노드(도 8 및 도 9의 노드 32 등)에 대한 순방향 경로 시간 보정 계수(FPTC)를 계산하기 위해 사용된다. FPTC의 결정 후에, 마스터는 그 P0 포트에서 MAT(도 10에 도시된 마스터 할당 전신)를 발행한다. 따라서, MAT는 슬레이브(34)에 최저의 이용가능한 네트워크 어드레스를 할당하고 슬레이브(34)에 대해 FPTC를 설정한다. 슬레이브(34)는 MAT에 의해 할당된 어드레스가 슬레이브(32)에 의해 수락되었음을 확인하기 위해 추가의 AAT(도 11에 도시됨)로 MAT에 응답한다. 도 11 및 모든 추가적인 설명에 있어서, 슬레이브(34)는 이미 목록화 완료되었음을 나타내기 위하여 슬레이브(34E)로서 표시될 것이다.
슬레이브(34E)의 목록화 후에, 마스터(36)는 그 P0 포트에서 MPT(도 12에 도시됨)를 발행하여 슬레이브(34E)의 P0 포트를 작동시킨다. 이로써 슬레이브(34E)는 그 내부 FIFO를 통하여 메시지를 릴레이하고, 따라서 슬레이브(32)와 같은 링 네트워크의 부가적인 노드를 발견 및 목록화할 수 있게 된다. 이 발견 및 목록화 공정은 슬레이브(34E)에 대하여 행하였던 것과 같이 슬레이브(32)에 대하여 진행한다. MQT가 슬레이브(34E)를 통해 (도 13에 도시된 것과 같은) 슬레이브(32)로 전송될 때, FPTC는 슬레이브(34E)의 리피터에 의해 야기된 지연을 포함할 것이다. 이하의 모든 설명에 있어서, 슬레이브(32)는 이미 목록화 완료되었음을 나타내기 위해 슬레이브(32E)로서 표시될 것이다. 물론, 발견, 목록화, 및 구성은 여기에서 설명하는 것 이상의 슬레이브 노드에까지 확대될 수 있다. 도면의 간결성 및 명확성을 위하여, 부가적인 슬레이브 노드는 생략하였다.
일 실시예에 있어서, 링의 모든 슬레이브들이 발견되고 목록화되고 구성되었을 때, 링이 완성되었는지 및 마스터(36)의 P0 포트로부터 마스터(36)의 Q 포트로 MQT가 이동하는데 걸린 총 시간이 측정되었는지를 결정한다(도 14에 도시됨). 그 다음에 마스터(36)는 총 지연 시간을 이용하여 복귀 링크(3)의 지연을 계산한다. 마스터(36)는 최종 링크(3)의 전파 지연을 비롯하여 네트워크 내의 모든 노드로의 전파 지연을 저장할 수 있다. 그 다음에 마스터(36)는 이러한 정보를 갖추고 나서 마스터(36)의 Q 포트로부터 네트워크의 각 노드까지의 지연을 계산한다. 마스터(36)의 Q 포트로부터 각 노드까지의 지연은 FPCT와 관련하여 설명한 것과 유사한 방법으로 역방향 경로 보정 시간(RPTC)을 계산하기 위해 사용된다. 그 다음에 마스터(36)는 특정 노드를 목표 정하기 위해 설정한 어드레스를 가진 도 15에 도시된 MCT(마스터 구성 전신)를 이용하여 각 노드에 대한 RPTC를 각 노드에 할당할 수 있고, 도 16에 도시된 바와 같이 할당을 확인하는 응답을 수신한다.
다른 실시예에 있어서, 발견, 목록화 및 구성 공정은 MHT를 이용하여 모든 노드를 숨기도록 지시함으로써 반복될 수 있고, 그 다음에 마스터(36)의 Q 포트를 이용하여 전술한 공정을 반복한다. 예를 들어, 이 공정의 제1 단계는 마스터(36)의 Q 포트로부터 MQT를 송신하고 도 17에 도시된 바와 같이 노드(34)를 (재)발견하는 단계를 포함한다. 순방향 및 역방향에서의 전파 지연은 네트워크 및 모든 슬레이브 노드 리피터의 동작 가능성을 보장하기 위해 서로 비교될 수 있다. 순방향 전파 지연과 역방향 전파 지연은 둘 다 필요에 따라 저장, 평균화 및/또는 결합될 수 있다.
발견 단계(60)가 완료된 후에, 모션 제어 네트워크는 동작 단계(62)로 진입할 수 있다. 이것은 예를 들면 마스터(36)로부터의 MST(마스터 동기화 전신)을 네트워크로 송신함으로써 표시될 수 있다. MST의 주요 목적은 슬레이브에 타이밍 기준을 제공하는 것이며, 하나의 MST의 예는 도 18에 도시되어 있다. 슬레이브로의 타이밍 기준을 표시하는 다른 하나의 방법은 MTT(마스터 타이밍 전신)의 송신을 포함하고, 이것은 링크 절단이나 유사한 네트워크 오류가 있는 경우에 링 네트워크 토폴로지 내의 일부 노드에 대한 MST의 등가물을 표시한다.
도 18에 도시된 MST는 어드레스 필드(172), 제어 필드(174), 데이터 필드(176) 및 FCS 필드(178)를 포함하고 있다. 이 필드들은 어드레스 필드(172)가 MST의 '방송'(즉, 모든 슬레이브 노드에 의해 수신되고 사용됨) 예정을 표시한다는 것 및 MST의 데이터 필드(176)가 비어있는 것을 제외하고, 도 4의 어드레스 필드(42), 제어 필드(43), 데이터 필드(44) 및 프레임 체크 시퀀스(45)에 대응한다. 캐리 데이터 대신에, MST는 슬레이브 노드가 구성 중에 설정된 FPTC(및/또는 RPTC)에 비추어 그 각각의 클럭을 동기화시키기 위해 사용할 수 있는 시간에 공통 지점 을 단순히 표시한다.
지금 설명하는 동작 단계(62)의 실시예에 있어서, 요구는 MDT(마스터 요구 전신)을 이용하여 정확히 하나의 슬레이브에 송신될 수 있다. 예시적인 MDT는 도 19에 도시되어 있고, 여기에서 어드레스 필드(182)는 단일 슬레이브 노드를 표시하고 데이터 필드(176)는 어드레스 필드(182)에서 표시된 단일 슬레이브 노드에 대한 런타임 요구를 포함한다. M-슬레이브 네트워크에 있어서, 어드레스 필드(182)에서는 M개의 가능한 어드레스가 발견되고, 각 MDT는 편리를 위해 MDT1, MDT2 등으로 지정될 수 있다. 물론, 단일 MDT는 예컨대 소망하는 복수의 슬레이브 노드를 표시하도록 하나 이상의 추가 어드레스를 정의함으로써 복수의 또는 모든 슬레이브 노드에 대해 동시에 어드레스 지정될 수 있다.
동작 단계에서도 또한 런타임 데이터(예컨대 피드백 제어를 위한 액츄에이터 및/또는 피작동물 위치)는 AT(슬레이브 전신)를 이용하여 슬레이브 노드로부터 마스터(36)로 복귀될 수 있다. AT의 예는 도 20에 도시하였다. 그 필드들은 어드레스 필드(192)가 AT의 소스인 슬레이브 노드의 어드레스를 표시하는 것을 제외하고 도 4에 도시된 예시적인 전신의 필드들과 대응한다. 더욱이, 데이터 필드(196)는 노드 통계(1961)와 애플리케이션 데이터(1962)를 포함할 수 있으며, 여기에서 노드 통계는 네트워크 정보(예를 들면 최종 MST 및 MDT가 정확히 수신되었는지를 표시하는 것 등)에 관한 것이고, 애플리케이션 데이터는 슬레이브 노드의 모션 동작에 관한 것이다. 양호한 실시예에 있어서, AT는 정확히 하나의 슬레이브로부터 런타임 데이터를 검색하고, 따라서 M-슬레이브 네트워크에는 어드레스 필드(192)에 M개의 가능 한 어드레스가 있으며, 각각의 AT는 편리를 위해 AT1, AT2 등으로 표시될 수 있다. 물론, 다른 AT들은 하나의 슬레이브가 다른 슬레이브와 통신하는 시스템 내의 또는 트리 토폴로지의 복수의 슬레이브 노드로부터의 데이터를 포함할 수 있다.
통상 동작 중의 하나의 예시적인 메시지 라우팅 방법은 도 21에 도시하였다. 도시한 예에 있어서, 외향 전신(MST, MDT)은 먼저 마스터(36)의 P0 포트로부터 슬레이브(32)의 Q 포트로 진행한다. 이들은 이중 PHY 요소에 의해 디코딩되고 슬레이브(32)의 MAC로 전송된다. '방송'인 전신(MST 등)에 있어서, 각각의 MAC는 전신 정보를 사용할 것이다. 특정 슬레이브 노드로 어드레스 지정된 전신(MDT 등)에 있어서는 단지 그 슬레이브 노드만이 전신 내의 정보에 따라 동작할 것이다. 양호한 실시예에 있어서, 각각의 전신은 전체 링 네트워크 주변을 라우팅하고, 각각의 슬레이브 노드는 모든 전신을 반복한다. 그러므로, 마스터는 메시지가 수신되고 모든 슬레이브에서 반복된 후에 최종 링크를 횡단하여 복귀된 그 자신의 외향 메시지를 가질 것이다. 이로써 마스터(36)는 링 네트워크의 연속성을 확인할 수 있다.
내향(마스터(36)로 향하는 것) 전신의 예시적인 라우팅 방식은 도 22에 도시하였다. 도시한 예에 있어서, 내향 전신(AT)은 먼저 슬레이브 노드의 Q 포트로부터 네트워크의 이전 노드(슬레이브 또는 마스터)로 송신된다. 전신이 전체 네트워크 링 토폴로지를 완료하기 전에 마스터(36)에 도달할 것이기 때문에, 일부 실시예에서 MTT(마스터 테일 전신)는 마스터에서 발생되어 마스터의 Q 포트로부터 송신된다. 이것은 예를 들면 기능적 역방향 경로를 확인하기 위해 행하여진다.
물론, 본 발명에서는 다른 메시지 라우팅 방법도 가능하다. 예를 들어, 라우 팅의 방향(및 '이전 슬레이브 노드' 및 '다음 슬레이브 노드'의 목적지)은 임의적이다. 메시지 라우팅은 또한 네트워크 링크 및/또는 슬레이브 노드의 오류에 응답하여 동작 상태에서 변할 수 있다.
도 23은 링 토폴로지가 슬레이브 노드(32E, 34E) 사이에 오류를 가지는 샘플 네트워크를 도시한 것이다. 링 네트워크 내의 링크가 절단되거나 오류를 일으킨 경우에, 메시지를 다시 라우팅함으로써 네트워크의 모든 동작을 유지할 수 있다. 이 경우에 네트워크는 한 쌍의 체인 토폴로지로 퇴화한다. 마스터(36)가 전체 링을 따라 송신된 복귀 전신의 수신을 실패(예를 들면, 마스터(36)의 P0 포트로부터 보내진 MDT가 마스터(36)의 Q 포트로 복귀되지 않음) 하자마자, 마스터(36)는 MST 및 슬레이브 MDT와 같은 전신을 마스터(36)의 Q 포트 외부로 전송할 수 있다. 오류가 발생한 위치에 따라서, 만일 임의의 슬레이브 노드가 자신의 Q 포트가 아닌 P0 포트에서 MST를 수신하면, 이 슬레이브는 도 23에 도시된 바와 같이 자신의 Q 포트가 아닌 자신의 P0 포트를 통하여 응답 전신(예를 들면 AT)을 보내도록 구성된다. 이러한 방식으로, 네트워크는 이제 링 대신에 2개의 빈약한 트리(slender tree)의 동작 토폴로지로 자동 전환한다. 더욱이, 오류의 존재 및 위치는 어느 슬레이브가 마스터(36)의 P0 포트에 전신을 보내지 않았는지(또는 역으로 어느 슬레이브가 마스터(36)의 Q 포트에 전신을 보냈는지)를 인식함으로써 결정될 수 있다. 물론, 양 포트에서 수신한 전신을 비교하여 오류가 단일 위치에서만 존재하는지 여부를 결정할 수 있다. 만일 네트워크 체인의 파괴가 하나의 링크에서 발생하면 파괴된 링 네트워크는 2개의 빈약한 트리로서의 완전한 동작을 유지한다. 어떤 응용에 있어서는 머신을 안전한 조건이 되게 하고(예를 들면 액츄에이터 모션을 중지함) 즉시 교정을 실행한다.
네트워크를 통한 정확한 통합 제어를 달성하기 위하여 소정 형태의 네트워크 타이머 시스템을 가질 필요가 있다. 네트워크 타이머 시스템은 또한 네트워크 트래픽의 정확한 스케줄링을 위해 유용하다.
통합된 다축 모션은 링 네트워크 토폴로지를 통한 신호의 전파 지연에 의해 복잡해진다. 예를 들어, 슬레이브 노드에서의 외향 전신(예컨대 MST 또는 MDT)의 수신은 케이블링, PHY, 및 이전 슬레이브 노드의 MAC 리피터를 통한 전파 시간에 의해 지연될 것이다. 그러므로, 물리적으로 크거나 또는 링에 많은 노드를 갖는(또는 후술하는 바와 같이 그들의 트리에 많은 층(tier)을 갖는) 네트워크는 최대의 지연을 받는다. 그러므로, 드라이브에 대한 요구의 동시 적용을 허용하기 위하여 보정 계수를 도입하고 네트워크 전체에 걸쳐 제어 엔티티로부터 동시에 획득된 피드백을 수신하는 것이 바람직하다.
전파 지연은 PHY 클럭 속도 및 정확성에 의해 설정된 불확실성의 레벨로 반복 가능하다. 전술한 바와 같이, 지연은 발견 상태에서 측정될 수 있다. 이러한 전파 지연을 보상하기 위해 사용될 수 있는 2개의 주요 요소가 네트워크 타이머 시스템에 존재한다. 첫번째는 마스터에 의해 방출된 엄격히 주기적인 MST 전신이고, 두번째는 각각의 슬레이브에 존재하는 로컬 타임 보정 회로이다.
제1 실시예에 있어서, 마스터는 링 주변에서 순방향 및 역방향으로 슬레이브에 도달하도록 마스터로부터 보내진 전신에 대해 걸린 시간과 관련된 2개의 상이한 보정 계수를 각각의 슬레이브에 송신한다. 이러한 분량은 순방향 및 역방향 경로 시간 보정, 즉 FPTC와 RPTC를 요청하고, 그 송신은 예를 들면 발견 단계(60) 중에 MCT를 이용하여 수행될 수 있다.
동작 단계(62) 중에, MST는 마스터(36)로부터 주기적으로 송신된다. MST는 네트워크에서 모션 제어 노드의 동작을 위한 동기화 신호이고, 다른 기능들 중에서 MST는 각 서보 루프에 대한 위치 데이터의 획득을 동기화시키는 것을 돕는다. 각각의 노드는 내부 타이머를 MST 동기화 신호로 위상 동기(phase lock) 시킬 수 있다.
완전한 네트워크 링 토폴로지로서 동작하는 일실시예에 있어서, MST는 마스터 동기화 신호를 연속적으로 구동하기 때문에, 각각의 슬레이브 노드는 그 내부 타이밍을 조정할 때 그 자신의 FPTC를 옵셋(offset)으로서 사용할 수 있다. 따라서, 각각의 노드는 FPTC가 상이한 시간에 각 노드에 수신되는 경우에도 제때에 동기화될 수 있다. 실제로, 각 노드는 FPTC 시간 간격에 의해 MST의 수신을 예상할 수 있다. 따라서, 모든 노드의 내부 타이밍은 동시 동기화에 기초하고, 위치 샘플링 및 모션 요구는 동시에 발생하며, 이것은 다축 통합에 대하여 필수적이다. 송신되는 슬레이브 노드에 대한 RPTC 지연을 갖고서 마스터에 다시 보내진 데이터의 수집을 옵셋하기 위하여 동일한 공정을 사용할 수 있다.
네트워크 오류 조건이 발생한 경우의 동작에 대한 제2 실시예에 있어서, MST는 마스터(36)의 P0 포트와 Q 포트 양자로부터 송신될 것이다. 이 경우에, 오류 링크가 마스터(36)에 바로 인접하지 않으면, 적어도 하나의 슬레이브 노드(36)는 Q 포트가 아닌 P0 포트에서 MST를 수신할 것이다. 도 25에 도시된 바와 같이, 슬레이브(32E)와 슬레이브(34E) 사이에 파괴가 있는 경우에, 역방향으로 보내진 MST는 슬레이브(39E, 38E, 32E)에 의해 수신된다. 따라서, FPTC는 더 이상 슬레이브(39E, 38E, 32E)에 적절하지 않고, 그 슬레이브들은 대신 RPTC를 사용해야 한다.
타이밍 보정에 의해 발생한 장점은 도 26에 도시된 본 발명의 일 실시예의 내용에서 알 수 있다. 네트워크 제어기(마스터(36))는 모션 기획 기능, 전형적으로 위치 루프를 구현하는 디지털 프로세서뿐만 아니라 다른 필터링 및 제어 기능을 포함한다. 네트워크 노드(슬레이브(32E, 34E))는 모터 드라이브, 위치 피드백 인터페이스, 및 모션 관련 I/O 인터페이스를 포함한다. 모션 제어 네트워크 노드는 또한 전류/토크 제어 루프를 구현하는 프로세서를 포함할 수 있다. 슬레이브 노드(32E, 34E)와 마스터(36)는 모두 네트워크 인터페이스를 가질 것이다.
알 수 있는 바와 같이, 드라이브, 모터, 위치 피드백 및 I/O 신호는 모두 노드에 접속된다. 이들 노드는 모터와 센서에 근접하여 위치될 수 있다. 이들 노드로의 배선은 짧게 유지될 수 있다. 네트워크 케이블은 모든 노드들을 마스터에 하나의 얇은 케이블로 접속한다. 신규 네트워크의 속도 및 결정론적인 성질은 모든 노드 및 그에 따른 모션 제어 시스템에서의 모든 축의 중앙 집중화된 소프트웨어 제어를 가능하게 한다. 또한, 배선은 종래의 비네트워크화 시스템에 비하여 최소로 된다.
동작 단계 중에, 도 27에 도시된 것과 같은 타이밍도는 도 26에 도시된 것과 같은 네트워크의 동작을 설명하기 위해 사용될 수 있다. MST는 모션 제어 시스템의 슬레이브 노드를 서보 사이클 클럭(또는 서보 사이클 클럭에 관한 주파수)로 동기 화시키기 위해 마스터(36)에 의해 주기적으로 송신될 수 있다. 실제 네트워크 전송 속도는, 많은 정보가 각 사이클에서 전송되어야 하기 때문에, MST신호의 주파수보다 수배 더 빠르다. 그러나, 모든 네트워크 동작은 MST 신호로 위상 동기 될 수 있다. 일 실시예에 있어서, 위치가 모션 제어 시스템에서 갱신되는 속도는 서보 사이클 클럭 속도이다. 각 축의 모션 궤도는 마스터(36)의 모션 기획 기능에 의해 결정되고, 서보 클럭의 각각의 틱(tick)에서 모션 궤도의 다음 지점을 나타내는 다음 위치 요구가 슬레이브 노드에서 드라이브에 제공된다.
비록, 복합 서보 시스템에서, 많은 기능들이 동기화 클럭의 각 사이클에서 수행될 수 있지만, 최소 3가지 동작이 각 사이클에서 발생하여야 한다. 첫째로, 액츄에이터 및/또는 피작동물의 위치가 획득되어야 한다. 둘째로, 이 위치 데이터는 마스터(36)로 전달되어야 한다. 세째로, (전체적으로 또는 부분적으로 금번 또는 이전 클럭 사이클 위치 데이터에 기초하여 계산된 피드백 신호에 기초하는) 속도나 토크 또는 전류 요구가 드라이브에 인가되어야 한다. 중앙 집중식 모션 제어 시스템에서 이러한 기능들은 각 축에 대하여 서보 클럭의 각각의 틱에 동기된다. 이로써 중앙 집중식 모션 제어 시스템에 의해 제어되는 고도로 통합된 다축 모션이 가능하게 된다.
특히 도 27의 타이밍도를 참조하면, 마스터 제어 프로세서(36)로의 역송신을 위해 슬레이브 노드(32E, 34E)에서 위치 데이터를 획득하는 것이 도시되어 있다. 도시한 바와 같이, 위치 데이터는 본 발명의 시간 보정 기능을 이용하여 2개의 노드에서 동시에 획득될 수 있다. 2-노드 시스템용으로 도 26에 도시한 바와 같이, 슬레이브 노드(34E)에서 서보 클럭 신호의 수신은 시간 FPTC1 만큼 지연되고, 슬레이브 노드(32E)에서 서보 클럭 신호의 수신은 FPTC2 만큼 지연된다. 이 지연 시간들은 마스터(36)로부터 슬레이브(34E)로 및 슬레이브(32E)로 지나가는 정보의 전파 지연 시간에 각각 대응한다. 따라서, 각 슬레이브 노드에서 서보 클럭 신호의 수신은 마스터(36)의 서보 클럭과 동일한 주파수로 되지만, 시간에 맞춰(in time) 옵셋된다. 본 발명의 이러한 실시예에 따라 각각의 FPTC가 각 슬레이브 노드에 미리 저장되어 있기 때문에, 각 노드는 동일한 실시간에 (그러나 슬레이브 노드에 의한 MST의 수신에 대해서는 상이한 시간에) 다음 위치 갱신을 획득한다.
각각의 슬레이브 노드에서 드라이브에 의한 속도, 토크 또는 전류 요구의 작동은 유사하게 달성된다(즉, 적당한 FPTC에 의해 지연된다). 따라서, 신규 네트워크는 마스터(36)의 서보 클럭과 확실한 동기화를 달성하면서 중앙 집중화 모션 기획 및 위치 제어를 유지한다는 것을 알 수 있다.
슬레이브 노드에서 발생하는 동작의 타이밍에 부가하여, 루프 네트워크에 따른 전신의 송신은 예컨대 전신 오버랩을 방지하기 위하여 동작 단계(62)에서 또한 스케쥴되어야 한다. (전술한 예시적인 발견 단계(60) 중에, 메시지의 스케쥴링은 네트워크가 자체 타이밍 설정하기 때문에 문제가 없다. 마스터(36)는 아무 때나 메시지를 송신하고 슬레이브는 그 직후에 마스터에 응답한다.)
동작 단계(62) 중에, 모든 메시지는 순환 방식(cyclic basis)으로 보내진다. 일 실시예에 있어서, 마스터(36)는 주기적인 방식(periodic basis)으로 MST를 송신하고, MTT 및 MDT는 MST 기간의 시작에 대하여 미리 규정된 옵셋으로 보내진다. 슬 레이브는 발견 단계(60) 중에 결정되어 슬레이브에 로드된 옵셋에서 그들의 AT를 방출하도록 시간 보정된 로컬 클럭을 사용한다.
이제, 동작 단계(62) 중의 2가지 예시적인 스케쥴링 방식, 즉 엄격한 타이밍과 자유 타이밍에 대하여 설명한다. 스케쥴링은 마스터(36)에 의해 공통적으로 결정되고, 예컨대 개개의 슬레이브 노드에 어드레스 지정된 MCT를 이용하여 발견 단계 중에 슬레이브 노드에서 구현된 타이밍 파라미터를 설정함으로써 달성될 수 있다.
자유 타이밍은 MST 동기화 신호와 관련있는 특정 시간에 전신이 특정의 슬레이브 노드로부터 송신되게 한다. 전신은 이들이 충분한 '갭'(시간 간격)만큼 서로로부터 분리되어 있기만 하면 임의의 미리 정해진 순서로 송신될 수 있다. 도 28에 도시된 시스템에 있어서, 예시적인 AT 순서는 AT4, 갭, AT1, 갭, AT3, 갭 및 AT2이다. 상기 갭은 전신이 충돌없이 링 주위에서 어느 방향으로든 이동할 수 있도록 선택될 수 있다.
임의의 타이밍 방식에서 절대적인 최소 갭은 PHY 장치(예를 들면 적어도 4개의 IDLE 기호)에 의해 규정되어, 첫째로 PHY 내의 위상 동기 루프 타이머가 MST와 동기되게 하고, 둘째로, 스크램블러의 재동기화를 위한 시간이 PHY 내에 있게 한다. 자유 타이밍에 있어서, 상기 갭은 모든 조건하에서 참작되어야 하고, 일반적으로 가장 먼 노드로부터 네트워크(모든 케이블링 및 리피터 포함)를 통한 전파 시간인 노드간의 클럭 속도차를 고려하는 것을 포함한다. 전파 시간이 충분히 크고 상기와 같은 고려가 없다면, AT4의 머리는 AT1의 꼬리와 충돌할 것이다.
엄격한 타이밍은 가장 효과적인 대역폭 이용을 달성하기 위한 AT의 송신 시간을 구성한다. 간단한 링 네트워크에 있어서, 노드들은 이전 노드로부터의 AT가 마스터(36)에 송신된 후에 (PHY에 대한 적당한 시간 갭 후에) 추종하도록 스케쥴링된 시간에 AT를 보낸다. AT는 따라서 순서대로 송신되고, Q 포트가 마스터의 P0 포트에 접속되어 있는 노드가 먼저 보내며, 그 다음에 상기 송신을 다음 노드에 표시하고, 두번째 노드가 그 다음에 마스터(36)에 두번째로 보내는 등의 방식으로 동작이 이루어지는데, 도 22에서 이것은 32E가 후속되는 34E에 대응한다. 따라서 AT1이 먼저 보내지고, 그 다음에 AT2가 보내지는 등으로 동작한다. 전술한 엄격한 타이밍 방법을 사용함으로써, PHY 장치에 의해 규정된 전신 사이의 최소 갭이 고려되고 충돌이 본질적으로 회피된다. 그러나, 오류 조건이 있을 때, 링 주변에서 AT 메시지의 방향은 슬레이브 장치의 적어도 일부에 대하여 반전될 것이고, 엄격한 타이밍 제도에 의해 설정된 송신 시간은 적당한 메시지간 타이밍 갭을 고려하도록 보장되지 않는다.
다른 네트워크 토폴로지는 도 29에 도시한 바와 같이 전이중 트리이다. 전이중 트리는 링 배선이 불편한 경우 또는 머신이 본래 모듈 구조를 갖는 경우에 사용될 수 있고, 기존의 네트워크 배선을 방해함이 없이 미리 배선된 서브 시스템을 부착하는 장점이 있다. 트리는 그 자신을 모듈 구조인 머신에 부여하기 때문에, 각각의 모듈은 미리 배선될 수 있고, 모듈들은 기존의 배선을 방해함이 없이 머신에 부가될 수 있다.
트리를 구현하기 위하여, 슬레이브 노드는, 일반적인 경우에, P0 포트 이외 에 P1, P2,...PN(310, 311)으로 표시된 다른 포트들을 갖는다. 각각의 PN 포트는 Q 포트(320)로 및 이 Q 포트(320)로부터의 송신을 반복할 수 있도록 한 쌍의 FIFO를 가질 것이다.
트리 구조의 양호한 실시예에 있어서, Q 포트로부터 슬레이브 노드 PHY에서 수신된 메시지는 각각의 포트(P0, P1, P2,...PN)로 반복되고, 반면에, 임의의 PN 포트로부터 슬레이브 노드 PHY에서 수신된 메시지는 PHY를 통하여 Q 포트로 반복될 뿐이다. 따라서, 리피터 기능은 양방향성이지만 마스터로부터 보내진 메시지는 트리 전체에 걸쳐 전개(fan out)되고, 반면에 슬레이브로부터 보내진 메시지는 마스터로 다시 이동하지만, 간단히 하기 위해 다른 슬레이브로 전개하지 않았다. 트리 구조의 각 링크는 PN 커넥터로부터 Q 커넥터로 이어지고, PN 커넥터의 수, 즉 전개 또는 트리에 대한 층의 수에 대한 기본적인 제한은 없다. 그러나, 실제로, 전개와 트리 깊이는 모두 경제적인 관점에서 제한될 것이다.
트리 구조에 있어서, 트리의 깊이를 감소시키기 위하여 그 유일한 기능이 전개를 증가시키는 슬레이브 노드를 갖는 것이 일부 실시예에서 실질적인 장점이 될 수 있으며, 이러한 슬레이브 노드는 제어 엔티티를 갖지 않도록 구성될 수 있고 어드레스를 지원할 필요가 없다. 이 경우에 상기 슬레이브 노드는 반복 중심(repeating hub)로서 동작한다.
트리에서의 발견 공정은 링에 대하여 동일하지만 약간의 차이가 있다. 이제 발견 공정은 각각의 슬레이브로부터, 부착되어 있는 것과 같은 수의 많은 다른 슬레이브까지 전개된다. 주어진 슬레이브의 PN 포트의 MPT 제어가 활성화되고, 그에 따라 한번에 하나의 노드씩 네트워크 트리의 선택적인 구성을 가능하게 한다.
전술한 엄격한 타이밍과 자유 타이밍은 모두 트리에 적용가능하다. 그러나, 엄격한 타이밍 방식은 트리 네트워크에서 다소 상이하다. 즉, 제1 층(마스터에 가장 가까운 것)으로부터의 AT는 순차적으로 중복없이 (마스터(36)에 의한 구성 단계 중에 설정된 시간에) 보내지고, 그 다음에 제2 층으로부터의 AT들이 보내지는 식으로 처리된다.
본 발명에 따른 네트워크는 최대 성능 레벨 및 최대 물리적 크기의 머신의 다축 제어 시스템에 적용 가능한 네트워크 접속과 관련된 모든 장점과 함께, 설정된 중앙 집중식 제어 모델의 유연성을 보존하는 모션 제어 시스템의 요소들을 결합한다.
지금까지 네트워크를 구현하기 위한 여러가지 구체적인 사항을 상세히 설명하였지만, 이러한 상세한 설명은 본 발명의 범위를 제한하는 것으로 해석되어서는 안되고, 오히려 그 예로서 해석되어야 한다. 당업자라면 많은 다른 변형예가 가능하다는 것을 알 것이다.
예를 들어, 본 발명에 따른 네트워크는 시간 보정을 위한 3가지 기술, 즉 비보정(no correction), 정적 보정(static correction) 및 측정된 보정(measured correction)을 모두 지원할 수 있다. 측정된 보정이 위에서 설명한 양호한 기술이지만, 실현하기에 더 간단하고 비용이 더 적게 드는 기술은 정적 보정이다. 정적 보정은 주어진 노드 및 노드로 이어지는 케이블의 지연을 미리 결정함으로써 달성된다. 그 다음에 마스터 노드는 이 값의 어떤 동작적 확인없이 보정 계수를 슬레이 브에 할당할 수 있다. 링 또는 트리에 따른 노드의 보정 계수는 누적적이다. 정적 보정 데이터는 슬레이브 노드의 데이터 시트 숫자일 수 있고 또는 각 장치에 대하여 미리 측정한 조정된 판독값 및 네트워크에서의 판독값일 수 있다. 더욱이, 소규모 네트워크에서 시간 보정은 모두 면제될 수 있다.
비록 네트워크는 MST가 마스터를 떠나는 순간이 서보 틱과 정렬되고, 상기 서보 틱은 서보 노드가 위치 데이터 또는 다른 데이터를 획득하는 순간과 정렬되며, 또한 슬레이브 노드가 새로운 요구값들에 효과를 제공하는 순간과 정렬되도록 구성될 수 있지만, 이러한 순간들은 모든 슬레이브에 대하여 여전히 동시성을 가지면서 지정된 타이밍 옵셋에 의해 분리될 수 있고 이것은 실질적으로 장점일 수 있다는 것을 이해하여야 한다.
순방향(또는 역방향) 시간 보정 파라미터를 MST 수신 시간으로부터 감산하는 것은 슬레이브 내에서 보정된 타이머를 달성하는 유일한 한가지 방법이다. 이와 달리, 위상 동기 루프를 이용하여 동일한 효과를 얻을 수 있다. 그러한 방법에 있어서, '트루 로컬 MST 펄스'는 '트루 로컬 MST 펄스'와 FPTC 이하의 사이클 시간만큼 지연된 수신 MST 사이의 위상 비교에 의해 발생된다.
양호한 실시예는 전술한 바와 같은 발견 단계를 포함한다. 그러나, 네트워크는, 다른 방식으로 그러나 훨씬 덜 편리하게, 설정 도구와 함께 DIP 스위치 또는 다른 비휘발성 메모리를 사용하여 노드 어드레스 및 타이밍 파라미터의 정적 할당을 통한 발견 단계없이 구현될 수 있다.
더욱이, 전술한 예시적인 전신의 기능들을 통합하는 것도 가능하다. 예를 들 어, MST 내의 데이터 필드는 유용한 정보를 포함하도록 수정될 수 있다. 다른 예로서, 전술한 MDT는 하나의 슬레이브 어드레스로 데이터를 운반한다. 이와 달리, 단일 MDT를 사용하는 것 및 모든 슬레이브에 대한 동작 데이터가 상기 단일 MDT 전신 내에 포함되도록 배열하는 것도 가능하다.
상기 설명에 있어서, 단일의 물리적 슬레이브 노드 내의 각 제어 엔티티는 별도의 노드 어드레스를 갖는다. 이와 달리, 물리적 노드에 하나 이상의 제어 엔티티가 존재하는 경우에, 회로 및 네트워크 이용의 관점에서, 4개의 별도로 어드레스 지정된 MDT 대신에 그 노드에 대한 단일 메시지의 모든 명령 데이터를 보내는 것이 가능하다. 유사하게, 모든 피드백 정보는 단일 AT로 묶을 수 있다.
전술한 실시예에 있어서, 노드 통계 필드는 최종 MST 및 MDT가 정확하게 수신되었는지 및 다른 네트워크 정보를 표시하기 위해 반전된다. 이와 달리, 노드 통계 필드는 AT 또는 동일한 목적으로 고안된 독립 전신의 어디에도 위치될 수 있다. 이와 달리, 노드 통계 필드는 모두 생략할 수도 있다.
삭제
앞에서 설명한 트리 토폴로지에서 메시지의 특수한 라우팅은 단순하게 하기 위해 선택되었다. 이와 다르게, AT 메시지는 모든 노드에 반영될 수 있다. 또한, 토폴로지가 트리인 경우에도, 링에서의 메시지 순환, 즉 모든 노드로 이동하거나 모든 노드로부터 이동하는 메시지 순환도 가능하다.
물론, 네트워크는 물리층에 대하여 특별한 요구조건이 없기 때문에 IEEE 802.3-1998 24~26절 대신에 물리층에 기반을 둘 수 있다. 전이중 또는 반이중(전이 중은 2개의 반이중 링크를 이용하여 구성할 수 있음)이면서 높은 비트율, 낮은 고유 에러율 및 양호한 EMC 특성을 가진 점대점 통신을 지원하는 임의의 층이 사용될 수 있다. 사용가능한 물리층의 일예는 IEEE 802.3ab-1999(구리를 이용한 기가비트 이더넷)이다.
여기에서 설명하는 하나 이상의 시퀀스를 실행하기 위한 명령어를 저장하기 위해 각종 형태의 컴퓨터 판독 가능한 매체를 이용할 수 있다. 예를 들어, 명령어는 초기에 마스터(36)에 삽입 가능한 자기 디스크에 저장할 수 있다. 그 다음에 마스터(36)는 본 발명의 모두 또는 일부를 구현하기 위한 명령어를 로드할 수 있다. 컴퓨터 판독 가능한 매체의 일반적인 형태로는, 예를 들면, 하드 디스크, 플로피 디스크, 테이프, 자기 광학 디스크, PROM(EPROM, EEPROM, 플래시 EPROM), DRAM, SRAM, SDRAM, 또는 임의의 다른 자기 매체, 네트워크 접속을 통해 전송된 아날로그 또는 디지털 신호, 컴팩트 디스크(예를 들면, CD-ROM), 또는 임의의 다른 광학 매체, 펀치 카드, 종이 테이프, 또는 홀의 형태를 가진 다른 물리적 매체, 반송파, 또는 컴퓨터가 판독할 수 있는 임의의 다른 매체 등이 있다.
간단히 요약하면, 본 발명에 따른 모션 제어 시스템, 모션 제어 시스템을 이용하는 방법, 및 모션 제어 시스템을 동작시키기 위한 명령어를 저장하는 컴퓨터 판독 가능한 매체는 전파 지연을 고려한 보정 기구를 제공한다. 이러한 모션 제어 시스템은 전이중 동작 및/또는 엄격하게 주기적인 메시지 통지를 포함할 수 있다. 이 모션 제어 시스템은 또한 수개의 드라이브의 토크/전류 요구를 16kHz 이상의 속도로 갱신하기에 충분한 높은 비트 속도를 제공할 수 있다. 더욱이 이 모션 제어 시스템은 링 토폴로지 또는 트리 토폴로지 사이에서, 및 섬유 또는 구리 전송 매체(또는 이들의 조합체) 사이에서 선택을 가능하게 하고, 및/또는 구현하는데 비용이 적게 들며, 다른 모션 장치와 전자기적으로 호환될 수 있다(예를 들면, 강건할 뿐만 아니라 큰 접지 전위차에서 동작할 수 있다). 더욱이, 이 모션 제어 시스템은 자동 시스템 구성 능력, 네트워크 오류의 자동 위치, 다수의 드라이브에서 요구의 동시 인가, 시스템 전체에 걸쳐서 다수의 드라이브로부터 데이터의 동시 획득, 및/또는 링크 절단이나 유사한 오류가 있는 경우에 완전하게 동작할 수 있는 능력(링 접속된 네트워크에서)을 제공할 수 있다.
전술한 내용에 비추어 본 발명의 많은 수정 및 변형이 가능하다는 것은 명백하다. 그러므로, 본 발명은 이하의 청구범위에 기재된 범위에서 위에서 구체적으로 설명한 것과 다른 방식으로 실시하는 것도 가능하다.
본 발명의 더 구체적인 내용과 많은 부수적인 장점들은 첨부 도면을 참조한 이하의 상세한 설명으로부터 용이하게 이해할 수 있을 것이다.
도 1은 전형적인 1축 모션 제어 시스템을 도시한 것이다.
도 2는 도 1의 변형예인 2축 모션 제어 시스템의 직렬 제어의 예시적인 층들을 도시한 것이다.
도 3은 링 토폴로지로 케이블 접속된 예시적인 시스템을 도시한 것이다.
도 4는 네트워크 전신의 예시적인 포맷을 도시한 것이다.
도 5는 상이한 종류의 네트워크 전신의 예들을 표의 형태로 도시한 것이다.
도 6은 모션 제어 시스템의 예시적인 상태도를 도시한 것이다.
도 7은 간단한 예시적인 미발견 링 네트워크를 도시한 것이다.
도 8은 예시적인 네트워크 발견 중에 예시적인 마스터 질의 전신의 송신을 도시한 것이다.
도 9는 예시적인 네트워크 발견 중에 예시적인 응답 전신의 송신을 도시한 것이다.
도 10은 예시적인 네트워크 발견 중에 예시적인 마스터 할당 전신의 송신을 도시한 것이다.
도 11은 예시적인 네트워크 발견 중에 예시적인 제2 응답 전신의 송신을 도시한 것이다.
도 12는 예시적인 네트워크 발견 중에 예시적인 포트 전신의 송신을 도시한 것이다.
도 13은 예시적인 네트워크 발견 중에 예시적인 제2 마스터 질의 전신과 함께 체인 내의 다음 노드의 액세스를 도시한 것이다.
도 14는 예시적인 네트워크 발견 중에 외향의 링 지연을 결정하기 위한 예시적인 타이밍 처리를 도시한 것이다.
도 15는 예시적인 네트워크 발견 중에 제1 노드의 RPTC를 설정하는 예시적인 처리를 도시한 것이다.
도 16은 예시적인 네트워크 발견 중에 제1 노드에 의한 RPTC의 예시적인 확인을 도시한 것이다.
도 17은 예시적인 네트워크 발견 중에 예시적인 마스터 질의 전신을 역방향으로 송신하는 것을 도시한 것이다.
도 18은 마스터 동기 전신의 예시적인 포맷을 도시한 것이다.
도 19는 마스터 데이터 전신의 예시적인 포맷을 도시한 것이다.
도 20은 증폭기 전신의 예시적인 포맷을 도시한 것이다.
도 21은 동작 단계 중에 발생하는 링 네트워크에서의 외향 메시지 통지의 예를 도시한 것이다.
도 22는 동작 단계 중에 발생하는 링 네트워크에서의 내향 메시지 통지의 예를 도시한 것이다.
도 23은 동작 단계 중의 오류 조건에서 발생하는 링 네트워크에서 외향 메시지 통지의 예를 도시한 것이다.
도 24는 동작 단계 중의 오류 조건에서 발생하는 링 네트워크에서 내향 메시지 통지의 예를 도시한 것이다.
도 25는 오류 조건에서 네트워크 타이밍 설정의 예시적인 방법을 도시한 것이다.
도 26은 간단한 예시적인 링 네트워크를 도시한 것이다.
도 27은 다중 노드의 동기 동작을 설명하기 위한 타이밍도이다.
도 28은 스케쥴링(엄격한 타이밍 및 자유 타이밍)을 설명하기 위해 사용되는 다른 하나의 간단한 예시적인 링 네트워크를 도시한 것이다.
도 29는 동작 단계 중에 트리 네트워크에서의 외향 메시지 통지를 도시한 것이다.
도 30은 동작 단계 중에 트리 네트워크에서의 내향 메시지 통지를 도시한 것이다.

Claims (8)

  1. 모션 제어 시스템의 오류 발생시 중앙 제어기에 의해 제어되는, 링 네트워크의 복수의 노드의 동작을 유지하는 방법에 있어서,
    중앙 제어기에서 상기 링 네트워크를 따라 제1 방향으로 복수의 각 노드로 어드레스 지정된 제1 메시지들을 송신하는 단계와;
    상기 송신된 제1 메시지들에 응답하여 상기 링 네트워크를 따라 제2 방향으로 상기 복수의 노드에 의해 송신된 제1 회신 메시지들을 중앙 제어기에서 모니터링하는 단계와;
    각 노드-이 각 노드에는 상기 제1 메시지들이 송신되었음-로부터 상기 제1 회신 메시지가 수신되지 않을 때, 중앙 제어기에서, 노드들의 제1 서브셋-이 제1 서브셋으로부터 상기 제1 회신 메시지들이 수신됨-을 식별하고, 그 식별 결과에 기초하여 노드들의 상기 제1 서브셋을 제외한 노드들의 제2 서브셋-이 제2 서브셋으로부터 각각의 제1 회신 메시지들이 수신되지 않았음-을 결정하는 단계와;
    제1 메시지가 송신된 각 노드로부터 제1 회신 메시지들이 수신되지 않을 때, 노드들의 상기 제2 서브셋 내의 각 노드로 어드레스 지정된 제2 메시지들을 중앙 제어기에서 상기 제2 방향으로 송신하는 단계와;
    상기 제2 메시지들에 응답하여 노드들의 상기 제2 서브셋의 각각의 노드에 의해 송신되는 제2 회신 메시지들-이 제2 회신 메시지들은 상기 링 네트워크를 따라 상기 제1 방향으로 이동하는 것임-을 중앙 제어기에서 수신하는 단계와;
    노드들의 상기 제1 서브셋에 어드레스 지정된 제3 메시지들을 중앙 제어기에서 상기 제1 방향으로 송신하는 단계와;
    노드들의 상기 제2 서브셋에 어드레스 지정된 제4 메시지들을 중앙 제어기에서 상기 제2 방향으로 송신하는 단계를 포함하는 동작 유지 방법.
  2. 제1항에 있어서, 상기 링 네트워크는 전이중 링 네트워크를 포함하는 것인 동작 유지 방법.
  3. 오류 발생시 링 네트워크를 통하여 중앙 제어기에 의해 제어되는 복수의 노드를 동작시키는 시스템에 있어서,
    상기 링 네트워크를 따라 제1 방향으로 복수의 각 노드에 어드레스 지정된 제1 메시지들을 송신하는 수단과;
    상기 제1 메시지들을 송신하는 수단에 의해 송신되는 상기 제1 메시지들에 응답하여 상기 링 네트워크를 따라 제2 방향으로 상기 복수의 노드에 의해 송신되는 제1 회신 메시지들을 모니터링하는 수단과;
    각 노드-이 각 노드에는 제1 메시지가 송신되었음-로부터 상기 제1 회신 메시지들이 수신되지 않을 때, 노드들의 제1 서브셋-이 제1 서브셋으로부터 상기 제1 회신 메시지들이 수신됨-을 식별하고, 그 식별 결과에 기초하여 노드들의 상기 제1 서브셋을 제외한 노드들의 제2 서브셋-이 제2 서브셋으로부터 각각의 제1 회신 메시지들이 수신되지 않았음-을 결정하는 수단과;
    제1 메시지가 송신된 각 노드로부터 제1 회신 메시지가 수신되지 않을 때 노드들의 상기 제2 서브셋 내의 각 노드들에 어드레스 지정된 제2 메시지들을 상기 제2 방향으로 송신하는 수단과;
    상기 제2 방향으로 송신하는 수단에 의해 송신되는 상기 제2 메시지들에 응답하여 노드들의 상기 제2 서브셋의 상기 각 노드들에 의해 송신되는 제2 회신 메시지들-이 제2 회신 메시지들은 상기 링 네트워크를 따라 상기 제1 방향으로 이동하는 것임-을 수신하는 수단을 포함하는 노드 동작 시스템.
  4. 컴퓨터 시스템 상에서 실행시키기 위한 것으로서, 컴퓨터 시스템에 의해 실행될 때 컴퓨터 시스템이 제1항에 기재된 방법을 수행하게 하는 명령어들을 포함하는 컴퓨터 프로그램을 저장하는 컴퓨터로 판독 가능한 매체.
  5. 컴퓨터 시스템 상에서 실행시키기 위한 것으로서, 컴퓨터 시스템에 의해 실행될 때 컴퓨터 시스템이 제2항에 기재된 방법을 수행하게 하는 명령어들을 포함하는 컴퓨터 프로그램을 저장하는 컴퓨터로 판독 가능한 매체.
  6. 동작 중에 전이중 데이터 네트워크(full-duplex data network)를 통해 중앙 제어기와 통신하도록 구성된 네트워크 노드에 있어서,
    상기 데이터 네트워크를 통해 제1 방향을 따라 송신되는 제1 신호를 수신하도록 구성된 제1 수신기와;
    상기 데이터 네트워크를 통해 제2 방향을 따라 송신되는 제2 신호를 수신하도록 구성된 제2 수신기와;
    상기 제2 방향으로 상기 제1 신호에 응답하도록 구성된 제1 회신 송신기와;
    상기 제1 방향으로 상기 제2 신호에 응답하도록 구성된 제2 회신 송신기와;
    상기 제1 신호가 수신되는 때에 상기 제1 회신 송신기를 선택하고 상기 제2 신호가 수신되는 때에 상기 제2 회신 송신기를 선택하도록 구성된 선택기와;
    상기 수신된 제1 신호와 제2 신호 중의 하나에 기초하여 동작을 구현하도록 구성된 액츄에이터를 포함하고,
    상기 제2 방향은 상기 제1 방향과 반대 방향이며, 상기 제1 신호 또는 상기 제2 신호 중 하나는 일정한 시간 간격으로 송신되는 것인, 네트워크 노드.
  7. 삭제
  8. 제6항에 있어서, 순방향 경로 지연 보정 신호와 역방향 경로 지연 보정 신호를 저장하도록 구성된 지연 보정 메모리를 더 포함하고,
    상기 액츄에이터는 액츄에이터 시간에서 상기 순방향 경로 지연 보정 신호와 상기 역방향 경로 지연 보정 신호 중의 선택된 신호에 기초하여 모션 또는 힘 관련 노력(force-related effort)인 상기 동작을 구현하도록 구성되며;
    상기 선택기는 상기 제1 신호가 수신되는 때에 상기 순방향 경로 지연 보정 신호를 선택하고 상기 제2 신호가 수신되는 때에 상기 역방향 경로 지연 보정 신호를 선택하도록 또한 구성되는 것인 네트워크 노드.
KR1020087029454A 2001-02-09 2002-02-11 모션 제어 시스템, 모션 제어 시스템의 사용 방법 및 모션 제어 시스템에서 사용하는 컴퓨터 판독 가능한 명령어 Expired - Lifetime KR100966866B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/779,834 US7024257B2 (en) 2001-02-09 2001-02-09 System for motion control, method of using the system for motion control, and computer-readable instructions for use with the system for motion control
US09/779,834 2001-02-09

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR10-2003-7010454A Division KR20030086997A (ko) 2001-02-09 2002-02-11 모션 제어 시스템, 모션 제어 시스템의 사용 방법 및 모션제어 시스템에서 사용하는 컴퓨터 판독 가능한 명령어

Publications (2)

Publication Number Publication Date
KR20080111167A KR20080111167A (ko) 2008-12-22
KR100966866B1 true KR100966866B1 (ko) 2010-06-29

Family

ID=25117715

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020087029453A Ceased KR20090009936A (ko) 2001-02-09 2002-02-11 모션 제어 시스템, 모션 제어 시스템의 사용 방법 및 모션 제어 시스템에서 사용하는 컴퓨터 판독 가능한 명령어
KR10-2003-7010454A Ceased KR20030086997A (ko) 2001-02-09 2002-02-11 모션 제어 시스템, 모션 제어 시스템의 사용 방법 및 모션제어 시스템에서 사용하는 컴퓨터 판독 가능한 명령어
KR1020087029454A Expired - Lifetime KR100966866B1 (ko) 2001-02-09 2002-02-11 모션 제어 시스템, 모션 제어 시스템의 사용 방법 및 모션 제어 시스템에서 사용하는 컴퓨터 판독 가능한 명령어

Family Applications Before (2)

Application Number Title Priority Date Filing Date
KR1020087029453A Ceased KR20090009936A (ko) 2001-02-09 2002-02-11 모션 제어 시스템, 모션 제어 시스템의 사용 방법 및 모션 제어 시스템에서 사용하는 컴퓨터 판독 가능한 명령어
KR10-2003-7010454A Ceased KR20030086997A (ko) 2001-02-09 2002-02-11 모션 제어 시스템, 모션 제어 시스템의 사용 방법 및 모션제어 시스템에서 사용하는 컴퓨터 판독 가능한 명령어

Country Status (8)

Country Link
US (5) US7024257B2 (ko)
EP (1) EP1379957B1 (ko)
JP (1) JP3588336B2 (ko)
KR (3) KR20090009936A (ko)
AT (1) ATE400944T1 (ko)
AU (1) AU2002251909A1 (ko)
DE (1) DE60227495D1 (ko)
WO (1) WO2002065219A2 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101313245B1 (ko) 2012-02-10 2013-09-30 삼성중공업 주식회사 모션제어 칩

Families Citing this family (120)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7301968B2 (en) * 2001-03-02 2007-11-27 Pmc-Sierra Israel Ltd. Communication protocol for passive optical network topologies
JP4552353B2 (ja) * 2001-05-11 2010-09-29 ソニー株式会社 サーボ・アクチュエータ並びにその位置検出装置
US7280549B2 (en) 2001-07-09 2007-10-09 Micron Technology, Inc. High speed ring/bus
US7181644B2 (en) * 2002-01-11 2007-02-20 Delphi Technologies, Inc. Method for synchronizing data utilized in redundant, closed loop control systems
US7099719B2 (en) * 2002-06-19 2006-08-29 Rockwell Automation Technologies, Inc. Output cam system and method
US7096076B2 (en) * 2002-06-19 2006-08-22 Rockwell Automation Technologies, Inc. Output cam system and method
US20040079491A1 (en) * 2002-10-28 2004-04-29 Harris James Jeffrey Evaporative process for the reconstitution of glycol bearing deicing fluids
JP3761170B2 (ja) * 2002-11-07 2006-03-29 本田技研工業株式会社 ネットワーク接続形態及びデータ送受信装置
US6807512B2 (en) * 2002-12-06 2004-10-19 Acu-Rite, Inc. Node identification by displacement
DE10304637A1 (de) * 2003-02-04 2004-08-19 Elektro Beckhoff Gmbh Unternehmensbereich Industrie Elektronik Netzwerk-Koppler, Netzwerk und Datenverarbeitungsverfahren für Ethernet-Telegramme
US7379418B2 (en) * 2003-05-12 2008-05-27 International Business Machines Corporation Method for ensuring system serialization (quiesce) in a multi-processor environment
DE102004027918B4 (de) * 2004-06-09 2008-06-19 Infineon Technologies Ag Power-Baustein
US20060067366A1 (en) * 2004-09-29 2006-03-30 Kerr Benjamin J Time division multiplexed transport emulation using symbol encoded physical layer
DE102004050424B4 (de) * 2004-10-15 2010-04-15 Bosch Rexroth Ag Verfahren zur Übertragung von Daten in einem Kommunikationssystem
DE102004050423A1 (de) * 2004-10-15 2006-04-20 Bosch Rexroth Ag Kommunikationssystem und Verfahren zur Synchronisation desselben
DE102004050416A1 (de) * 2004-10-15 2006-04-27 Bosch Rexroth Ag Verfahren zur Synchronisation in einem redundanten Kommunikationssystem
US7194321B2 (en) * 2004-10-29 2007-03-20 Dynacity Technology (Hk) Limited Modular multi-axis motion control and driving system and method thereof
DE102004055975B4 (de) * 2004-11-19 2007-05-03 Bosch Rexroth Ag Synchronisationsverfahren und Steuerungssystem für die zeitliche Synchronisation von Nebeneinheiten, sowie zeitsynchronisierbare Nebeneinheit
US7983769B2 (en) * 2004-11-23 2011-07-19 Rockwell Automation Technologies, Inc. Time stamped motion control network protocol that enables balanced single cycle timing and utilization of dynamic data structures
US7904184B2 (en) * 2004-11-23 2011-03-08 Rockwell Automation Technologies, Inc. Motion control timing models
JP4594047B2 (ja) * 2004-11-25 2010-12-08 川崎マイクロエレクトロニクス株式会社 デバイス
US7904182B2 (en) * 2005-06-08 2011-03-08 Brooks Automation, Inc. Scalable motion control system
US20070005158A1 (en) * 2005-06-30 2007-01-04 Kabushiki Kaisha Yaskawa Denki Web based controller
US7174474B1 (en) * 2005-10-12 2007-02-06 Avago Technologies Ecbu Ip (Singapore) Pte. Ltd. Distributed autonomous control system for multi-axis motion control
AU2006306522B9 (en) 2005-10-21 2011-12-08 Deere & Company Networked multi-role robotic vehicle
US7643430B2 (en) * 2005-11-30 2010-01-05 Cisco Technology, Inc. Methods and apparatus for determining reverse path delay
DE102006004339A1 (de) * 2006-01-30 2007-08-02 Robert Bosch Gmbh Redundantes Kommunikationsnetzwerk
KR100881462B1 (ko) * 2006-06-07 2009-02-06 삼성전자주식회사 백본네트워크의 서브네트워크 간 릴레이 전송이 가능한네트워크 토폴로지 구축방법
US7941051B2 (en) * 2006-07-21 2011-05-10 Konica Minolta Opto, Inc. Laser optical device and control method of actuator
US7719214B2 (en) * 2006-10-06 2010-05-18 Performance Motion Devices, Inc. Method and apparatus for controlling motors of different types
WO2008079774A2 (en) * 2006-12-22 2008-07-03 Texas Instruments Incorporated Auto-configuration of daisy-chained devices
US20080155126A1 (en) * 2006-12-22 2008-06-26 Texas Instruments, Inc. Auto-Configuration Of Daisy-Chained Devices
US7782800B2 (en) * 2006-12-22 2010-08-24 Texas Instruments Incorporated Discovery, detection, and management of daisy-chain system topology
US20080159454A1 (en) * 2006-12-27 2008-07-03 National Taiwan University Network on chip device and on-chip data transmission device
DE102007004044B4 (de) * 2007-01-22 2009-09-10 Phoenix Contact Gmbh & Co. Kg Verfahren und Anlage zur optimierten Übertragung von Daten zwischen einer Steuereinrichtung und mehreren Feldgeräten
DE102007006422B4 (de) * 2007-02-05 2024-06-06 Robert Bosch Gmbh Verfahren zum Betreiben von Maschinen mit anpassbaren Bewegungsprofilen
CN100561904C (zh) * 2007-04-29 2009-11-18 山东大学 一种实现以太网链状网络节点间同步的装置和方法
WO2008112248A1 (en) * 2007-03-14 2008-09-18 Amx, Llc System, method and computer readable medium for communicating with a zigbee device from a peripheral network
CN101578806B (zh) * 2007-03-28 2013-02-13 株式会社安川电机 通信装置、同步通信系统及同步通信方法
WO2008126698A1 (ja) * 2007-04-05 2008-10-23 Autonetworks Technologies, Ltd. 車載用の中継接続ユニット
KR100745641B1 (ko) * 2007-05-02 2007-08-02 주식회사 아이오. 테크 네트워크 기반의 로봇 시스템의 제어를 위한 통신 방법 및 데이터 구조
US8072999B1 (en) 2007-05-08 2011-12-06 Motion Engineering Inc. Method and system for removing and returning nodes in a synchronous network
US7446693B1 (en) * 2007-05-18 2008-11-04 M/A-Com, Inc. Phase domain analog to digital converter
US9136711B2 (en) * 2007-08-21 2015-09-15 Electro Industries/Gauge Tech System and method for synchronizing multiple generators with an electrical power distribution system
US8082515B2 (en) * 2007-11-30 2011-12-20 National Instruments Corporation Motion controller that supports standard and custom axes
WO2009086524A1 (en) * 2007-12-29 2009-07-09 Brigitte Bernadette Birze Development and deployment of self-describing controlled device modules in a control system
US8316343B2 (en) * 2007-12-29 2012-11-20 Amx Llc Self-describing device module and system and computer-readable medium for the production thereof
US7944157B2 (en) * 2008-01-14 2011-05-17 Rockwell Automation Technologies, Inc. Dual ring dedicated drive control system for medium voltage variable frequency drives
JP5245464B2 (ja) * 2008-03-06 2013-07-24 パナソニック株式会社 モータ駆動用通信システム
US20090240853A1 (en) * 2008-03-21 2009-09-24 Rochester Institute Of Technology Method and apparatus for configuring a bus network in an asset management system
DE102008018633B4 (de) 2008-04-11 2013-10-10 Phoenix Contact Gmbh & Co. Kg Verfahren, Buskomponenten und Steuerungssystem zur Ethernet-basierten Steuerung eines Automatisierungssystems
US8214415B2 (en) 2008-04-18 2012-07-03 Motion Engineering Incorporated Interpolator for a networked motion control system
US7796585B2 (en) * 2008-05-21 2010-09-14 Dell Products, Lp Network switching in a network interface device and method of use thereof
CN101610055B (zh) * 2008-06-16 2012-09-19 鸿富锦精密工业(深圳)有限公司 马达同步启动方法及动态校正方法
US8080966B2 (en) * 2008-07-03 2011-12-20 Honeywell International Inc. Motor control architecture for simultaneously controlling multiple motors
US7969985B1 (en) 2008-09-03 2011-06-28 Motion Engineering, Inc. Method and system for scheduling, transporting, and receiving inbound packets efficiently in networks with cyclic packet scheduling
US8543750B1 (en) 2008-10-15 2013-09-24 Octasic Inc. Method for sharing a resource and circuit making use of same
US8689218B1 (en) 2008-10-15 2014-04-01 Octasic Inc. Method for sharing a resource and circuit making use of same
US8072174B2 (en) 2008-11-17 2011-12-06 Rockwell Automation Technologies, Inc. Motor controller with integrated serial interface having selectable synchronization and communications
KR101575283B1 (ko) * 2009-04-01 2015-12-10 한화테크윈 주식회사 가변식 테이프 피더
JP5449893B2 (ja) * 2009-07-21 2014-03-19 株式会社日立製作所 電力変換装置
US8250343B2 (en) * 2009-07-21 2012-08-21 National Instruments Corporation Axial motion control processing by multiple cores respectively executing each of a sequence of functions in parallel for respective portions of a motion system
US8363680B2 (en) * 2009-10-29 2013-01-29 Precision Microdynamics, Inc. Network control architecture and protocol for a distributed control, data acquisition and data distribution system and process
JP5137984B2 (ja) * 2010-02-12 2013-02-06 株式会社日立ハイテクインスツルメンツ フィールドネットワークシステム
US8774010B2 (en) 2010-11-02 2014-07-08 Cisco Technology, Inc. System and method for providing proactive fault monitoring in a network environment
US8559341B2 (en) 2010-11-08 2013-10-15 Cisco Technology, Inc. System and method for providing a loop free topology in a network environment
JP2012141898A (ja) * 2011-01-05 2012-07-26 Sony Corp 情報処理システム及び機能拡張装置
US8982733B2 (en) 2011-03-04 2015-03-17 Cisco Technology, Inc. System and method for managing topology changes in a network environment
US8670326B1 (en) 2011-03-31 2014-03-11 Cisco Technology, Inc. System and method for probing multiple paths in a network environment
US8724517B1 (en) 2011-06-02 2014-05-13 Cisco Technology, Inc. System and method for managing network traffic disruption
US8830875B1 (en) 2011-06-15 2014-09-09 Cisco Technology, Inc. System and method for providing a loop free topology in a network environment
EP2544388B1 (de) 2011-07-08 2017-09-27 Siemens Aktiengesellschaft Verfahren zur Arbeitstakt- und Zeittaktsynchronisation in einem Automatisierungsnetzwerk
US8843218B2 (en) * 2011-07-22 2014-09-23 GM Global Technology Operations LLC Method and system for limited time fault tolerant control of actuators based on pre-computed values
US8726063B2 (en) * 2011-07-26 2014-05-13 Raytheon Company Systems and methods providing output sample frequency determinism by calculating a delay with a wall clock and using a timer to compensate for the delay
CN102332973B (zh) * 2011-09-07 2014-07-09 上海交通大学 一种链状网络的实时通信与时钟同步方法
US9634863B2 (en) 2011-11-11 2017-04-25 Kollmorgen Corporation Systems and methods for supporting two different protocols on a same physical connection
CN103188064A (zh) * 2011-12-28 2013-07-03 中兴通讯股份有限公司 时钟同步方法及装置
KR101346690B1 (ko) * 2012-01-31 2013-12-31 주식회사 아진엑스텍 다중 프로토콜 전송 장치
KR101398000B1 (ko) * 2012-06-13 2014-05-27 (주)브이아이앰 모션체어 제어용 네트워크 보드
US8860773B2 (en) 2012-10-17 2014-10-14 The Mitre Corporation Telepresence for remote collaboration with a gestural interface
US9450846B1 (en) 2012-10-17 2016-09-20 Cisco Technology, Inc. System and method for tracking packets in a network environment
CN103810776A (zh) * 2012-11-12 2014-05-21 北京诺信泰伺服科技有限公司 多轴智能闸机控制系统
CN102981992B (zh) * 2012-11-28 2015-12-02 中国人民解放军国防科学技术大学 基于异步结构的集成电路片上通讯方法及装置
US9733638B2 (en) 2013-04-05 2017-08-15 Symbotic, LLC Automated storage and retrieval system and control system thereof
EP2849370B1 (en) * 2013-09-13 2017-11-08 Deutsche Telekom AG Method for an enhanced failure localization in an optical data transmission network, optical data transmission network and program product
JP6393508B2 (ja) * 2014-04-16 2018-09-19 株式会社日立製作所 分散型制御システム
KR101666712B1 (ko) * 2014-05-13 2016-10-14 엘에스산전 주식회사 모듈형 멀티레벨 컨버터
KR101630510B1 (ko) * 2014-05-13 2016-06-14 엘에스산전 주식회사 모듈형 멀티레벨 컨버터
WO2016044062A1 (en) * 2014-09-20 2016-03-24 Innovasic, Inc. Ethernet interface module
KR20170132737A (ko) * 2015-04-02 2017-12-04 아지토 모션 시스템즈 엘티디 모션 관련 제어 시스템을 위한 중앙집중형 네트워크 연결된 토폴로지
US9546069B2 (en) 2015-04-09 2017-01-17 Microsoft Technology Licensing, Llc Drive for electromechanical control of lines
US10060374B2 (en) * 2015-04-29 2018-08-28 General Electric Company Engine system and method
WO2017159472A1 (ja) * 2016-03-15 2017-09-21 パナソニックIpマネジメント株式会社 複数軸モータ制御システム
DE102016205052A1 (de) * 2016-03-24 2017-09-28 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Telegrammaufteilungsübertragungsverfahren für bidirektionale netze
US10505374B2 (en) * 2016-05-31 2019-12-10 Infineon Technologies Ag Power balancing communication for battery management
CN105988404B (zh) * 2016-06-30 2018-12-04 深圳市优必选科技有限公司 一种伺服器控制系统
CN106325218B (zh) * 2016-08-18 2019-03-01 深圳市优必选科技有限公司 一种伺服器、伺服器控制系统及其通信方法
CN106647571B (zh) * 2016-12-15 2020-06-23 中国科学院沈阳自动化研究所 一种支持认知的运动控制系统及方法
US10333435B2 (en) 2017-02-22 2019-06-25 Performance Motion Devices, Inc. Multi-motor controller
WO2019060044A1 (en) 2017-09-22 2019-03-28 Performance Motion Devices, Inc. MOTION SYSTEM WITH SENSOR OUTPUTS AND HAPTIC CONTROLS
DE102017125086A1 (de) 2017-10-26 2019-05-02 Beckhoff Automation Gmbh Datenübertragungsverfahren und Kommunikationsnetzwerk
EP3477896B1 (en) * 2017-10-26 2020-02-19 Mitsubishi Electric R&D Centre Europe B.V. Efficient scheduling telecommunication scheme using a first cyclic ethernet protocol and a second cyclic ethernet protocol
CN107800578B (zh) * 2017-11-27 2020-12-01 辽宁工程技术大学 一种网络化故障发生过程的分析方法
CN108270652B (zh) * 2017-12-29 2021-03-30 北京纳米维景科技有限公司 一种高速实时总线系统及其数据处理方法
JP6969455B2 (ja) 2018-03-13 2021-11-24 オムロン株式会社 制御装置、制御システム、制御方法、および、制御プログラム
DE102018206109B4 (de) * 2018-04-20 2021-01-07 Lenze Automation Gmbh Elektrisches Steuergerät und Steuergerätesystem
CN108829923B (zh) * 2018-05-04 2022-08-05 上海创远仪器技术股份有限公司 延时校准参数的确定方法、装置、电子设备以及存储介质
JP7192608B2 (ja) * 2019-03-26 2022-12-20 オムロン株式会社 ネットワーク管理装置、管理方法、管理プログラムおよび記録媒体
TWI732233B (zh) 2019-06-24 2021-07-01 竹北動力股份有限公司 控制系統和控制方法
CN110515352B (zh) * 2019-08-29 2021-10-26 西门子工厂自动化工程有限公司 伺服驱动器的故障监测方法、装置、处理器、电子设备
CN112486246B (zh) * 2019-09-12 2024-12-31 中兴通讯股份有限公司 时钟延时检测、补偿方法、装置、终端及可读存储介质
DE102019125527B4 (de) 2019-09-23 2021-04-01 Beckhoff Automation Gmbh Verfahren zur Zeitsynchronisation in einem Ethernet-basierten Netzwerk
DE102019125545B3 (de) 2019-09-23 2021-03-25 Beckhoff Automation Gmbh Datenübertragungsverfahren, segment-telegramm und automatisierungskommunikationsnetzwerk
CN111061328B (zh) * 2019-12-24 2021-08-31 上海智殷自动化科技有限公司 一种基于Ethernet/IP的低压直流伺服
CN111665752B (zh) * 2020-05-27 2022-09-27 中国核电工程有限公司 一种基于fpga的装卸料机运动控制系统及方法
DE112022001890T5 (de) * 2021-04-02 2024-01-18 Analog Devices International Unlimited Company Topologie-ermittlung in multidrop-ethernet-knoten
JP7579199B2 (ja) * 2021-04-23 2024-11-07 株式会社デンソー 通信システム
EP4364289A4 (en) 2021-06-30 2025-04-23 Leggett & Platt Canada Co. INTELLIGENT MOTOR SYSTEMS AND PROCESSES WITH LOCAL INTELLIGENCE
US20230403179A1 (en) * 2022-06-08 2023-12-14 Analog Devices, Inc. A2b cable length detection
CN116449772B (zh) * 2023-06-16 2023-10-03 成都飞机工业(集团)有限责任公司 一种多轴协同运动控制方法、装置、设备及介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000029008A (ko) * 1998-10-12 2000-05-25 윤종용 패킷 스위치 네트워크에서의 흐름 제어 방법
KR20000040686A (ko) * 1998-12-19 2000-07-05 서평원 Lan 선로의 이중화 시스템

Family Cites Families (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4262336A (en) * 1979-04-27 1981-04-14 Pritchard Eric K Multi-axis contouring control system
US4449196A (en) * 1979-04-27 1984-05-15 Pritchard Eric K Data processing system for multi-precision arithmetic
US4214823A (en) * 1979-05-22 1980-07-29 Pritchard Eric K Animation stand control system
CA1301261C (en) * 1988-04-27 1992-05-19 Wayne D. Grover Method and apparatus for clock distribution and for distributed clock synchronization
JPH0234059A (ja) * 1988-07-25 1990-02-05 Mitsubishi Electric Corp ノード装置の処理方式
JPH02266729A (ja) * 1989-04-07 1990-10-31 Mitsubishi Electric Corp 二重ループ通信システムにおける通信制御方式
US5414700A (en) * 1990-01-22 1995-05-09 Digital Equipment Corp. Negotiation protocol for establishment of full duplex communication on a token ring network
JP3279580B2 (ja) 1991-01-07 2002-04-30 株式会社東郷製作所 位置決め機構におけるモ−タの制御装置
JP2636534B2 (ja) * 1991-03-22 1997-07-30 三菱電機株式会社 通信システム
US5206857A (en) * 1991-04-29 1993-04-27 At&T Bell Laboratories Apparatus and method for timing distribution over an asynchronous ring
US5555438A (en) * 1991-07-24 1996-09-10 Allen-Bradley Company, Inc. Method for synchronously transferring serial data to and from an input/output (I/O) module with true and complement error detection coding
US5508909A (en) * 1994-04-26 1996-04-16 Patriot Sensors And Controls Method and systems for use with an industrial controller
JPH0876822A (ja) 1994-09-05 1996-03-22 Mitsubishi Electric Corp 駆動制御指令装置と複数台の駆動制御指令装置の同期制御システム及びその同期制御方法
AUPN422295A0 (en) 1995-07-18 1995-08-10 Bytecraft Research Pty. Ltd. Control system
JP3615596B2 (ja) * 1995-08-22 2005-02-02 ファナック株式会社 数値制御装置
JP3372725B2 (ja) 1995-08-31 2003-02-04 キヤノン株式会社 同期スキャン制御装置
US5821666A (en) * 1995-09-22 1998-10-13 Nippondenso Co., Ltd. United control system comprising a plurality of control units independently controllable
JPH1013394A (ja) * 1996-06-21 1998-01-16 Fanuc Ltd 通信における同期方法
US5914963A (en) * 1996-06-21 1999-06-22 Compaq Computer Corporation Clock skew reduction
DE19634449C2 (de) * 1996-08-26 1998-07-09 Brueckner Maschbau Steuerungsvorrichtung für linearmotor-getriebene Einrichtungen
DE19642264C1 (de) * 1996-10-11 1998-02-19 Becker Gmbh Verfahren zur Kompensation von Laufzeitverzögerungen in einem ringförmigen Kommunikationsnetz
JP3339786B2 (ja) 1996-12-02 2002-10-28 オークマ株式会社 環状通信路におけるタイマー同期化装置および初期化方法
JP3864291B2 (ja) 1997-09-19 2006-12-27 株式会社安川電機 多軸制御装置
US6112308A (en) * 1998-01-23 2000-08-29 Intel Corporation Cascaded multiple internal phase-locked loops for synchronization of hierarchically distinct chipset components and subsystems
JP2000035806A (ja) 1998-07-21 2000-02-02 Mitsubishi Electric Engineering Co Ltd 同期コントローラ
US6195332B1 (en) * 1998-08-28 2001-02-27 3Com Corporation Rate-based flow control protocol on an ethernet-over-ring communications network
JP2000132428A (ja) 1998-10-21 2000-05-12 Toshiba Corp コンピュータシステム、コンピュータシステムのアプリケーション監視方法、及びプログラム記録媒体
JP3484084B2 (ja) 1998-11-10 2004-01-06 株式会社東芝 監視制御装置および情報通信装置監視装置
EP1052560B1 (en) * 1999-05-11 2004-08-11 Fanuc Ltd Numerical control system
JP4341106B2 (ja) 1999-05-31 2009-10-07 ソニー株式会社 電子機器の使用状況監視方法および使用状況監視システム
US7035269B2 (en) * 2000-02-02 2006-04-25 Mcgill University Method and apparatus for distributed synchronous clocking
WO2001061939A2 (en) * 2000-02-18 2001-08-23 Bridgeco Ag Multi-portal bridge for providing network connectivity
US6918047B1 (en) * 2000-09-07 2005-07-12 Ati International, Srl Apparatus for high data rate synchronous interface using a delay locked loop to synchronize a clock signal and a method thereof
US6718476B1 (en) * 2000-11-27 2004-04-06 Sony Corporation Method of synchronizing each local clock to a master clock in a data bus system
US7447762B2 (en) * 2001-04-02 2008-11-04 Curray Timothy G Ethernet communications for power monitoring system
US6675272B2 (en) * 2001-04-24 2004-01-06 Rambus Inc. Method and apparatus for coordinating memory operations among diversely-located memory components
US6943610B2 (en) * 2002-04-19 2005-09-13 Intel Corporation Clock distribution network using feedback for skew compensation and jitter filtering
US7240231B2 (en) * 2002-09-30 2007-07-03 National Instruments Corporation System and method for synchronizing multiple instrumentation devices

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000029008A (ko) * 1998-10-12 2000-05-25 윤종용 패킷 스위치 네트워크에서의 흐름 제어 방법
KR20000040686A (ko) * 1998-12-19 2000-07-05 서평원 Lan 선로의 이중화 시스템

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101313245B1 (ko) 2012-02-10 2013-09-30 삼성중공업 주식회사 모션제어 칩

Also Published As

Publication number Publication date
US7143301B2 (en) 2006-11-28
KR20080111167A (ko) 2008-12-22
KR20090009936A (ko) 2009-01-23
JP3588336B2 (ja) 2004-11-10
US20050273182A1 (en) 2005-12-08
EP1379957A2 (en) 2004-01-14
KR20030086997A (ko) 2003-11-12
JP2002244701A (ja) 2002-08-30
AU2002251909A1 (en) 2002-08-28
ATE400944T1 (de) 2008-07-15
US20060276913A1 (en) 2006-12-07
WO2002065219A2 (en) 2002-08-22
DE60227495D1 (de) 2008-08-21
EP1379957A4 (en) 2006-09-06
US20020110155A1 (en) 2002-08-15
WO2002065219A3 (en) 2003-11-20
US20060276912A1 (en) 2006-12-07
US7460471B2 (en) 2008-12-02
EP1379957B1 (en) 2008-07-09
US20060271805A1 (en) 2006-11-30
US7024257B2 (en) 2006-04-04
US7406354B2 (en) 2008-07-29

Similar Documents

Publication Publication Date Title
KR100966866B1 (ko) 모션 제어 시스템, 모션 제어 시스템의 사용 방법 및 모션 제어 시스템에서 사용하는 컴퓨터 판독 가능한 명령어
EP3229412B2 (en) Industrial wireless communications system
EP2139172B1 (en) Hybrid topology ethernet architecture
KR101912134B1 (ko) 산업용 무선 통신 시스템
US8072999B1 (en) Method and system for removing and returning nodes in a synchronous network
US7009995B1 (en) Method and a device for communication among equal-access stations of a ring-shaped serial fiber-optic bus
EP1901483B1 (en) Network system and audio signal processor
JP2013229891A (ja) 物理層インターフェース、システムおよび方法
Toh et al. A performance analysis of three potential control network for monitoring and control in Power Electronics converter
EP1901489B1 (en) Network system and audio signal processor
JP4898187B2 (ja) 低ジッタ同期によるモジュラー方式数値制御装置
CN100481801C (zh) 以太网通信系统中多用户实时通信方法及以太网通信系统
Aristova Ethernet in industrial automation: Overcoming obstacles
CN114731310B (zh) 用于时间敏感型现场总线联网的方法、系统和网关
US10630604B2 (en) Method for isochronous data communication in a realtime ethernet data network
EP2884810A1 (en) Deterministic medium access control
Ryley et al. Piggybacked token-passing access protocol for multichannel optical fibre LANs
CN114641970A (zh) 用于时间敏感型现场总线联网的方法、系统和网关
Kim et al. High speed ring-based distributed networked control system for real-time multivariable applications
CN113037372B (zh) 一种时间触发无源光总线及其实现方法
JPS63263938A (ja) 信号同期方式
CN113170296A (zh) 产业机器系统、通信方法和无线接入点
Upender et al. Embedded Communicat Protocol Options
JPH0279637A (ja) 信号同期方式
JPH0435933B2 (ko)

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
PA0104 Divisional application for international application

Comment text: Divisional Application for International Patent

Patent event code: PA01041R01D

Patent event date: 20081201

PA0201 Request for examination
PG1501 Laying open of application
E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20090302

Patent event code: PE09021S01D

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20090910

Patent event code: PE09021S01D

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20100414

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20100622

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20100623

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
FPAY Annual fee payment

Payment date: 20130604

Year of fee payment: 4

PR1001 Payment of annual fee

Payment date: 20130604

Start annual number: 4

End annual number: 4

FPAY Annual fee payment

Payment date: 20140603

Year of fee payment: 5

PR1001 Payment of annual fee

Payment date: 20140603

Start annual number: 5

End annual number: 5

FPAY Annual fee payment

Payment date: 20150608

Year of fee payment: 6

PR1001 Payment of annual fee

Payment date: 20150608

Start annual number: 6

End annual number: 6

FPAY Annual fee payment

Payment date: 20160613

Year of fee payment: 7

PR1001 Payment of annual fee

Payment date: 20160613

Start annual number: 7

End annual number: 7

FPAY Annual fee payment

Payment date: 20170613

Year of fee payment: 8

PR1001 Payment of annual fee

Payment date: 20170613

Start annual number: 8

End annual number: 8

FPAY Annual fee payment

Payment date: 20180612

Year of fee payment: 9

PR1001 Payment of annual fee

Payment date: 20180612

Start annual number: 9

End annual number: 9

FPAY Annual fee payment

Payment date: 20190613

Year of fee payment: 10

PR1001 Payment of annual fee

Payment date: 20190613

Start annual number: 10

End annual number: 10

PR1001 Payment of annual fee

Payment date: 20200612

Start annual number: 11

End annual number: 11

PR1001 Payment of annual fee

Payment date: 20210616

Start annual number: 12

End annual number: 12

PC1801 Expiration of term

Termination date: 20220811

Termination category: Expiration of duration