이 블로그는 원래 cimetrix.com에 게시되었습니다.
GEM 표준은 종종 제조 장비용 단일 연결 프로토콜로 잘못 인식됩니다. 단일 연결이란 한 번에 하나의 소프트웨어 제품만 GEM 인터페이스를 사용할 수 있음을 의미합니다. GEM 표준을 지원하는 많은 제조 장비는 단일 연결 기능만 갖추고 있습니다. 그러나 이러한 제한은 오직 무지와 관행에 의해서, 그리고 일반적인 제조 시스템 아키텍처를 충족시키기 위해 설정된 것입니다.
사실 GEM 표준은 추가 연결에 대해 전혀 언급하지 않습니다. 즉, 추가 연결이 요구되지도 않고 금지되지도 않다는 의미입니다. 장비가 여러 개의 동시 GEM 인터페이스를 지원하는 것이 가능할 뿐만 아니라, 이는 점점 더 보편화되고 있습니다. 지원되는 각 GEM 연결이 지점 간 연결이며 GEM 표준을 준수한다면, 이는 분명히 허용됩니다. 그러나 각 연결은 다른 GEM 연결과 완전히 독립적이어야 하며 여전히 GEM 요구 사항을 준수해야 합니다. 다중 연결 구현은 여러 가지 의문을 제기합니다.
각 GEM 연결이 독립적이라는 것은 무엇을 의미하는가?
이는 각 GEM 호스트가 다른 GEM 호스트 연결이 존재하지 않는 것처럼 완전히 독립적으로 작동함을 의미합니다. "완전히 독립적"을 정의하는 속성의 보다 구체적인 목록은 다음과 같습니다:
- 통신 상태 모델은 독립적입니다. 각 호스트 패키지는 서로 독립적으로 연결을 설정하고 해제할 수 있습니다.
- 제어 상태 모델은 독립적입니다. 각각은 필요에 따라 로컬 또는 원격으로 설정할 수 있습니다.
- 컬렉션 이벤트 보고서 동적 구성은 완전히 독립적입니다. 각 호스트는 고유한 보고서 집합을 정의하고 고유한 컬렉션 이벤트 집합에 구독합니다. 그럼에도 불구하고, 두 개의 GEM 호스트 연결이 동일한 보고서를 생성하고 이를 동일한 컬렉션 이벤트에 연결하는 경우, 양쪽 모두 동일한 데이터를 수신해야 합니다.
- 각 호스트는 고유한 경보 세트를 구독합니다.
- 각 호스트는 다른 호스트와 독립적으로 상태 정보를 조회할 수 있습니다.
- 각 호스트는 스풀링을 활성화하거나 비활성화할 수 있으며 원하는 대로 구성할 수 있습니다.
- 각 호스트는 자체 추적 데이터 수집을 설정할 수 있습니다.
- 각 호스트는 자신의 구독에 기반하여 메시지만 수신합니다.
- 각 호스트는 자신의 주요 메시지에 대한 응답 메시지만 볼 수 있습니다.
HSMS-GS에 대해 말씀하시는 건가요?
HSMS-GS는 SEMI 표준 E37.2( 고속 메시지 서비스 – 일반 세션)를 구현하는 것을 의미하며, 이는 비활성화된 SEMI 표준입니다. 이 표준은 업계에서 큰 주목을 받지 못했으며, 단일 포트를 열어 여러 클라이언트가 연결할 수 있도록 합니다. 반면, 제가 말하는 것은 E37.1(고속 메시지 서비스 – 단일 세션, HSMS-SS)의 다중 구현을 지원하는 것으로, 각 연결은 고유한 포트 번호를 사용합니다. 현재 거의 모든 GEM 인터페이스는 HSMS-SS 프로토콜을 사용합니다.
단일 GEM 인터페이스에 여러 GEM 연결을 갖는 것의 장점은 무엇입니까?
이로 인해 다양한 유용한 응용 프로그램의 가능성이 열립니다. 다음은 세 가지 예시 구성이며, 물론 이 모든 것을 동시에 구현할 수 있습니다.
- 공장은 동일한 장비의 GEM 인터페이스에 연결하기 위해 여러 호스트 소프트웨어 패키지를 동시에 설정할 수 있으며, 서로를 인식하거나 간섭하지 않습니다. 단일 연결만 사용하는 공장에서 동일한 작업을 수행하려면 서로 다른 GEM 호스트 패키지 통신을 단일 GEM 연결로 통합하기 위해 일종의 GEM 호스트 브로커를 구현해야 합니다… 이는 기술적으로 까다로운 작업입니다.

- 장비 공급업체가 공장에서 가동 중인 자사 장비 전용 애플리케이션을 개발하고자 할 경우, GEM 연결 중 하나를 활용할 수 있습니다. 이를 통해 기능을 커스텀 인터페이스로 재구현할 필요가 없습니다.

- 한 장비가 다른 장비와 직접 데이터를 모니터링, 제어 또는 전달해야 할 경우, 공장 GEM 연결에 간섭 없이 GEM 연결 중 하나를 사용하여 수행할 수 있습니다. 이는 설정하기 비교적 간단합니다. 때로는 이를 수평 통신이라고 부릅니다. 이러한 통신은 GEM 인터페이스의 전통적인 수직 통신 사용 사례를 통해 호스트를 경유하여 전달될 수도 있습니다.

안전은 어떻습니까?
일반적으로 공장에서는 GEM 인터페이스에 단 하나의 연결만 설정하여 온라인-원격 상태로 유지하고 원격 명령 전송을 허용할 것으로 예상됩니다. 그러나 이는 절대적인 요구사항은 아닙니다. 원격 명령 실행이 여러 애플리케이션에 분산되는 경우를 상상하는 것은 어렵지 않습니다. 예를 들어, 장비 공급업체는 실제 측정 성능을 기반으로 장비의 주기적 재교정을 관리하기 위해 하나의 GEM 연결을 사용할 수 있습니다.
기술적 문제점은 무엇입니까?
몇 가지가 있습니다.
- 각 연결이 별도의 포트 번호를 사용하기 때문에, HSMS-SS를 사용할 때 GEM 인터페이스는 유한한 수의 연결만 지원할 수 있습니다.
- 표준에서 다중 연결을 명시적으로 다루지 않으므로, 이를 처리하기 위한 요구사항이 존재하지 않습니다. 예를 들어, GEM은 운영자 명령 및 운영자 레시피 관리 활동을 호스트에 보고할 것을 요구합니다. 그러나 다른 연결에서 원격 명령을 전송하거나 새 레시피를 다운로드할 때는 이를 보고할 의무가 없습니다. 당사의 CIMConnect 제품은 보고하지만, 이를 수행해야 한다는 공식적인 요구사항은 없습니다.
- GEM은 GUI에 통신 상태를 표시해야 하지만, 다중 연결의 경우 어떻게 해야 할까요? 여러 호스트에 대해 무엇을 표시해야 하는지 명확하지 않습니다. 일반적으로 저는 첫 번째 GEM 연결 상태만 표시해 왔지만, 각 연결 상태를 표시하고 운영자가 모든 GEM 연결을 제어할 수 있도록 하는 것이 유용할 수 있습니다.
- 일부 수집 이벤트(따라서 데이터 변수), 상태 변수 및 장비 상수는 해당 단일 연결의 동작을 대상으로 합니다. 이는 다중 연결을 올바르게 구현하려면 이러한 연결별 기능이 해당 연결에 대해 고유해야 함을 의미합니다. 예를 들어, 상태 변수 EventsEnabled 및 ControlState를 고려해 보십시오. 이 두 상태 변수에 대해 보고되는 값은 해당 연결에 고유합니다. 이는 다중 연결로 GEM 인터페이스를 구현하는 데 어느 정도 복잡성을 더합니다. 물론, 당사의 CIMConnect 제품은 이미 이를 구현하고 처리하고 있습니다.
각 GEM 연결은 반드시 동일해야 합니까?
아니요, 하지만 일반적으로는 동일해야 합니다. 동일한 수집 이벤트/데이터 변수, 알람, 상태 변수 및 장비 상수 세트가 모든 연결에 보고되어야 합니다. 그러나 특정 연결에 고유한 수집 이벤트와 데이터를 포함하는 것이 유용한 사용 사례도 있습니다. 예를 들어, 장비 공급업체가 자사 장비 전용 공장 호스트 패키지의 파이프라인으로 하나의 GEM 연결을 사용하는 경우, 해당 업체만 볼 수 있는 고유한 데이터를 게시하고자 할 수 있습니다. 위에서 언급한 바와 같이, 두 개의 GEM 호스트 연결이 동일한 보고서를 생성하고 동일한 수집 이벤트에 연결하는 경우, 양쪽 모두 동일한 데이터를 수신해야 합니다. 반면, 동일한 상태 변수를 가진 추적 데이터 보고서는 서로 다른 시간 간격으로 독립적으로 샘플링될 수 있으므로 동일한 데이터를 보고할 필요는 없을 수 있습니다.
장비는 GEM 인터페이스에서 몇 개의 GEM 연결을 지원해야 합니까?
5개의 연결을 지원하는 것을 권장합니다. 현재 대부분의 GEM 구현체는 단일 연결만 사용하므로, 이를 통해 최대 4개의 추가 연결이 가능해집니다. 이로 인해 장비는 공장 재구성 없이도 대부분의 상황을 처리할 수 있습니다. CIMConnect에서 5개 연결을 위한 오버헤드는 매우 적으며, 사용되지 않을 경우 사실상 존재하지 않습니다.
통신 설정은 어떻게 해야 합니까?
장비는 반드시 수동 모드로 설정해야 합니다. 이렇게 하면 모든 구성이 호스트 측에서 이루어집니다. 모든 연결에 동일한 장치 ID를 사용할 수 있으며, 0, 1 또는 32767이 가장 적합합니다.
CIMConnect에서 여러 GEM 연결을 활성화하려면 어떻게 해야 합니까?
CIMConnect 제품은 본질적으로 다중 GEM 연결을 지원하므로 Cimetrix 고객은 설정 파일만 구성하면 됩니다. 당사의 CIMConnect GEM 제품은 원래 다중 GEM 연결을 염두에 두고 설계되었으므로, 운영자 인터페이스의 추가 작업을 제외하면 사실상 별도의 프로그래밍이 필요 없는 본질적이고 직관적인 제품입니다. 설정 파일에서 먼저 다섯 개의 [CONNECTIONX] 섹션을 생성한 후, 각 연결별로 연결 전용 VARIABLES 및 EVENTS 섹션을 설정하면 됩니다.
대안적 접근법?
대안적인 접근법 중 하나는 SEMI 장비 데이터 수집(EDA) 표준을 살펴보는 것이다. EDA 인터페이스는 본질적으로 데이터 수집 전용이며, 표준에 다중 클라이언트 접근이 기본 요구사항으로 내장되어 있다. 반도체 프런트엔드 장비 제조사들은 GEM 표준 외에도 이 기술을 성공적으로 도입했다. GEM 인터페이스는 제조 실행 시스템(MES)이 장비의 명령 및 제어를 위해 사용하는 반면, EDA 인터페이스는 그 외 모든 애플리케이션에 사용된다.
마지막 생각
제 권고사항은 모든 분들, 특히 Cimetrix CIMConnect 고객사들이 GEM 인터페이스를 점검하여 다중 호스트 연결 구현을 제대로 수행하고 있는지 확인하시라는 것입니다. CIMConnect는 이를 매우 쉽게 만들어 줍니다. 또한 고객사들에게 이 기능이 제공됨을 알려 그들이 이를 활용할 수 있도록 하십시오.
GEM 표준에 대한 자세한 내용은 저희 웹사이트에서 언제든지 확인하실 수 있습니다.
{{cta(‘3ac7f910-7d5a-4042-8a7c-4297df11510d’,’justifycenter’)}}