SECS-GEM通信標准的特點


SECS / GEM通信標准的特點

第一章介紹

SECS/GEM指的是一組用於管理制造設備和工廠主機系統之間通信的半導體行業標准。消息層標准SEMI E5 SECS-II定義了一個通用的消息結構和一個包含許多標准化消息的庫。協議層標准SEMI E37高速消息服務(HSMS)定義了使用TCP/IP傳輸SECS-II消息的二進制結構。SEMI E30 GEM定義了一組最低要求、附加(可選)功能、用例和部分SECS-II消息的用戶場景。

SECS/GEM是在設備上實現的,工廠使用它來實現命令和控制功能。由於它是一個行業標准,任何符合SECS/GEM的主機軟件都可以與任何符合SECS/GEM設備進行通信。該標准在設備上全面實施后,工廠軟件可通過其SECS/GEM接口對設備進行全面控制和監控。這些標准為設備制造商和工廠提供了許多好處。本文重點介紹了其中的幾個好處。

SECS/GEM降低了設備集成成本

工廠通常由跨國企業擁有和經營,這些企業從各種設備制造商購買設備。盡管每種設備的控制軟件都不一樣,但要求工廠對設備進行整合,使設備協調運行。雖然可以獨立地將每個設備與定制的軟件集成在一起,但是這樣做既不節約成本,也不節省時間。

設備制造商的情況也類似,他們的產品銷往全球各地的不同工廠。每個工廠的數據收集和應用軟件都是不同的。設備制造商需要幫助工廠整合采購的設備。雖然為每個工廠開發定制的集成解決方案是可能的,但這仍然不是成本有效的。每當工廠要求定制集成特性時,這些成本就會轉嫁到工廠本身。

定制化軟件,無論是由設備制造商還是工廠開發的,創建和維護起來都很昂貴,而且往往質量低於預期。相比之下,SECS/GEM標准定義了如何在任何制造設備上創建標准化接口。設備制造商受益於為所有客戶開發一個接口。工廠通過為他們購買的所有設備重用相同的集成軟件而獲益。工廠和設備制造商對該軟件和技術的重用提高了軟件質量,降低了成本,並允許更多的功能。設備制造商和工廠不僅可以在所需的最低需求功能上投資,還可以實現在其他方面無法負擔的高級功能。如果他們只需要支持SECS/GEM,那么設備制造商就可以發布更多的數據,支持更先進的控制。反過來,工廠可以利用這些額外的數據來提高產品質量和生產率。

SECS/GEM適用於所有制造設備

因為SECS/GEM被划分為基本需求和附加功能,它可以在任何制造設備上實現,而不考慮其大小和復雜性。額外的功能是可選的,因為它們並不總是被需要的。例如,一些設備沒有配方,因此不需要實現配方管理這項附加功能。

SECS/GEM也可以很好地根據設備數據的大小進行規模的縮放。例如,一個非常簡單的設備或設備可能會發布10個不同的采集事件,而一個復雜的設備可能會發布5000個不同的采集事件; 然而,兩者都可以使用相同的SECS/GEM技術。

使用SECS/GEM接口可以支持無數的應用程序

SECS/GEM使得設備上發生的一切都可以被追蹤到。支持任何遠程控制功能和系統配置。設備發布的數據越多,工廠可以實現的軟件應用程序就越多。SECS/GEM接口使統計工藝控制、故障排除、預測性維護、前饋/反饋工藝控制、設備利用率、材料跟蹤、配方驗證以及更多應用程序的實現成為可能。這些應用程序通常減少了對設備上人機操作界面的需要,從而減少了工廠中操作員的數量。配方管理允許工廠最小化報廢材料。例如,使用SECS/GEM接口將黃金配方存儲在工廠的中央存儲器,並確保在材料上使用正確的配方。

SECS/GEM非常有效地使用網絡帶寬

有幾個特性使SECS/GEM自然高效。首先,每個SECS/GEM接口都充當消息代理。由於代理在設備上運行,未訂閱的數據不會在網絡上發布。如果主機軟件要接收警報、收集事件或跟蹤數據消息,必須先訂閱。由於每個對警報、收集事件和跟蹤數據的訂閱都是單獨管理的,因此設備可以實現單個SECS/GEM接口,該接口發布所有工廠應用程序請求的所有警報、收集事件和跟蹤數據,而不會因為不必要的數據浪費網絡帶寬。此外,當主機訂閱跟蹤數據時,它可以指定數據收集速率,這使得SECS/GEM比以硬編碼速率發布數據的協議更有效和有用。

另外,所有SECS/GEM消息總是以高效率的二進制格式傳輸。這比ASCII格式的協議使用更少的帶寬。盡管使用二進制格式,SECS/GEM消息也很容易和標准的XML符號進行互轉。

SECS/GEM獲得業界的大力支持

多年來,SECS/GEM一直是半導體行業工廠/設備通信和控制系統的支柱。這意味着今天所有的半導體制造完全依賴於SECS/GEM通信。自90年代末以來,300mm半導體工廠一直在以SECS/GEM通信為基礎的全自動化運行——像台積電、三星、美光、英特爾、東芝等大公司在每個工廠7*24小時的使用SECS/GEM。平板顯示器、高亮度LED和光伏等其他行業也正式開始使用SECS/GEM,因為它們認識到SECS/GEM特性可以應用於任何制造設備,以支持關鍵任務的應用。

SECS/GEM是自描述的

雖然該標准要求GEM文檔隨設備一起提供,但是SECS/GEM仍支持多種方法讓主機軟件自動適應設備的SECS/GEM接口。主機軟件可以通過一些消息請求可用報警、狀態變量以及設備常量的列表,對於較新的SECS/GEM實現,主機軟件還可以請求可用采集事件和數據變量的列表。這些消息使得SECS/GEM接口即插即用。此外,設備制造商還可以提供一個標准化的提供SECS/GEM接口及其特性的完整描述的XML文件。

總結

對於工廠和設備制造商來說,使用SECS/GEM技術有許多好處,以上只是其中的一部分。SECS/GEM是當今可用的成熟技術。

 

第二章 GEM 收集事件

在開始我們的SECS/GEM系列之前,讓我們先來解釋GEM標准的一個關鍵特性,即Collection Events。我們將從解釋它們如何工作開始,然后進一步說明為什么它們在從制造設備收集數據方面如此有效。

什么是收集事件?

收集事件名稱中的兩個單詞是描述性的。

事件一詞所示,收集事件是通知。它的目的是在設備上發生感興趣的事情時通知主機。主機是指連接到設備GEM接口的工廠客戶端軟件。例如,收集事件可以在物料到達時報告,耗材不足時報告,出現硬件問題時報告,攝像機對物料進行檢查時報告,物料准備取出時報告,燃燒室達到目標真空壓力時報告,加工完成時報告等等。設備可以使用收集事件特性來報告任何感興趣的事件。創建GEM接口的人准確地定義了主機可以使用哪些收集事件;因此,不同設備類型的可用收集事件集是不同的。

收集事件功能也能夠將數據與收集事件消息一起發布。這是一種非常有效的數據收集形式,在消息可用時異步提供信息。例如,當物料到達時報告的收集事件也可以報告到達物料的條碼和位置。GEM接口中有三種類型的數據; 關於收集事件的數據(稱為數據變量)、關於狀態的信息(稱為狀態變量)和設備設置信息(稱為設備常量)。無論誰創建GEM接口,都將准確地定義每個收集事件將提供哪些信息。因此,不同設備類型的收集事件的可用信息集是不同的。只有在主機設置報表時,設備才會將可用數據發送到主機。

綜上所述,收集事件不僅可以告訴主機發生了什么事情,還可以提供關於發生了什么事情以及設備狀態的更詳細的信息。

一個小的類比

打個比方,把工廠想象成老板,把他們購買的設備想象成員工。有許多不同的管理風格,就像有不同類型的工廠和運行工廠的風格一樣。你不想被迫按照別人的工廠的方式經營自己的工廠。你想按你自己的方式去做。

此外,每個員工都是獨特的,需要獨特的關注度。每個員工都在做獨特的事情。一般來說,所有的管理者都想知道員工的基本情況以及他們的員工在做什么。他們想要知道員工什么時候開始一個項目,什么時候完成一個項目。有些員工即使在極少的監督和匯報下也非常高效。一些員工需要大量的監督和報告。GEM允許工廠以獨特的方式處理每台設備。具體來說,GEM收集事件為設備提供了一種報告其正在做什么的方式。

主機必須為報告建立規則,並適當地調整規則。例如,有時經理並不關心員工什么時候去洗手間。對於某些員工,經理可能想知道。在GEM接口中,主機可以選擇哪些通知會發生,哪些不會發生。

有時經理只需要知道員工什么時候來,什么時候走,什么時候休息,什么時候下班。有時經理需要更多的細節,比如你完成了什么項目,花了多長時間,項目的關鍵結果。類似同樣的,GEM允許主機不僅僅跟蹤事件發生的時間,還要提供關於活動的詳細信息。GEM報告非常有效地滿足了這一需求。

為什么需要這個功能?

簡單地說,收集事件允許您實時跟蹤設備在做什么。如果一家工廠想要進行某種程度的智能制造,或者只是想提高生產率,那么首先需要的是能夠跟蹤設備在做什么。收集事件提供了這一點。您可以跟蹤設備利用率、材料移動、處理里程碑、活動周期計數,以便進行預測性維護、消耗品使用,以及與發布的收集事件相關的任何其他內容。這些信息的應用是無止境的。

有時,收集事件還用於實現以下場景:設備在繼續或獲得繼續的許可之前需要來自主機的信息。當設備准備好接受主機指令或權限時,可以通過收集事件通知主機。

收集事件通知如何工作?

設備的GEM接口可以發布許多不同的收集事件。通常情況下,主機不希望一次得到所有這些信息的通知,也不需要這樣做。收集事件以兩種方式使用發布/訂閱設計模式。

基本的發布/訂閱通知

主機訂閱特定的收集事件,以便在事件發生時接收通知。訂閱允許主機啟用或禁用GEM接口中可用的每個收集事件的報告。設備在會該收集事件發生時發布它們。

事件報告發布/訂閱數據收集

默認情況下,收集事件消息不包含任何數據。訂閱還允許主機決定在每個啟用的收集事件的消息中包含哪些數據。主機定義報表並將報表鏈接到收集事件;從而訂閱數據。每個收集事件可以有不同的報告。還可以多個收集事件共享一個報表。報表里可以包含與收集事件關聯的任何數據變量、任何狀態變量和任何設備常量。設備會在發布收集事件是將請求的數據一並帶出。

識別

設備發布的每個收集事件都有一個惟一的ID號進行標識。主機軟件在啟用或禁用收集事件時使用ID號。設備在發送收集事件消息時使用ID號。每個可用的數據變量、狀態變量和設備常量都有一個惟一的ID號。當主機定義報表時,它也需要為報表分配惟一的ID號。

代理

代理構建在設備的GEM接口中,負責處理所有收集事件發布/訂閱。它是設備系統的一部分。主機(客戶端)GEM接口之間的通信使用SECS/GEM通信進行標准化。GEM接口與設備的其余硬件和軟件(設備收集事件和數據的源)之間的通信可以是任何適當的技術,只要GEM接口功能正常並且性能足夠好就可以了。

這意味着消息只會在主機訂閱之后才從設備發送到主機。將代理作為設備和GEM接口的一部分可以使GEM接口變得非常有效,並且比使用外部代理的協議使用更少的帶寬,因為在外部代理中,所有消息和數據都必須一直發送到代理。

持久性

收集事件訂閱持久化在GEM接口中。因此,如果主機斷開並重新連接,或者設備重新啟動,GEM接口仍舊記得所有訂閱的設置。

GEM使用哪些消息?

下面是與收集事件相關的每個主要消息的摘要。注意,“S”表示“F”表示函數。流和函數號一起惟一地標識一個消息。

消息編號

方向

描述

S2F37

主機->設備

啟用或禁用一組收集事件的報告。

 

空列表將啟用或禁用所有收集事件的報告。在描述GEM接口時,啟用所有收集事件報告非常有用。在啟用所需收集事件的報告之前,禁用所有收集事件是非常有用的。

S2F33

主機->設備

定義一個或多個報告。

 

空列表將刪除所有報告以及指向收集事件的報告鏈接。當試圖重置訂閱或首次連接到GEM接口並覆蓋默認訂閱時,刪除所有報告功能非常有用。

S2F35

主機->設備

將一個或多個報告鏈接到一組收集事件。

 

如果報表已鏈接到一個收集事件,則必須移除鏈接,然后在一條消息中鏈接所有收集事件。空列表將從收集事件中刪除報表鏈接。

S1F23

主機->設備

請求獲取可用收集事件列表以及每個收集事件的可用數據列表。

S6F11

設備->主機

收集事件消息。

 

如果沒有鏈接任何報告,則消息將只包含收集事件的ID。如果一個或多個報告鏈接到集合事件,則消息中將包含每個鏈接報告的報告數據。

關乎收集事件的常見問題

收集事件需要多少帶寬?

這取決於幾個因素。

  1. 主機啟用的收集事件的數量。
  2. 連接到收集事件的數據報告的大小。
  3. 設備觸發啟用的收集事件的頻率。這取決於收集事件的含義。

收集事件觸發的速度有多快?

GEM標准使用標准通信硬件,並不限制收集事件的頻率。換句話說,通過改進硬件,可以加快收集事件的速度。

GEM支持兩種協議:SECS-IHSMSSECS-I基於RS-232串行通信,因此目前很少使用。這樣的實現無法非常快地觸發收集事件。

HSMS基於網絡通信。由於串行通信很慢,所以目前大多數GEM實現都使用HSMSGEM可以非常有效地使用TCP/IP。收集事件的可能頻率取決於網絡硬件的速度、設備計算機性能和主機性能。與大多數協議一樣,使用消息通常比生成消息需要更多的計算機資源。

生成收集事件的速度還取決於鏈接到收集事件的數據報告。例如,如果數據報告很大,比如10mb,這將影響性能。

為什么我無法收到收集事件消息?

主機無法收到收集事件消息的可能原因有幾個。

  1. 主機和設備必須使用成功的S1F13/S1F14交換建立GEM通信。
  2. GEM控制狀態必須在線。它不能處於主機-脫機或設備-脫機狀態。
  3. GEM Spooling 必須是非活躍的。在Spooling已經活躍時時禁用該功能並不會使Spooling變為活躍。如果不需要Spooling消息,則需要使用消息S6F23清除Spooling內容。如果需要假脫機消息,那么使用S6F23逐個獲取它們,直到Spooling機狀態變為非活躍狀態。
  4. 必須啟用收集事件。使用S1F3檢查“EventsEnabled”狀態變量以確認收集事件已啟用。使用消息S2F37啟用收集事件。
  5. 需要發生收集事件活動。例如,如果材料沒有實際到達,那么當材料到達時將永遠不會發生收集事件報告。如果活動發生且滿足上述條件,則設備GEM接口存在缺陷。

如果設備的GEM接口沒有發布我需要的收集事件,該怎么辦?

請設備供應商添加所需的收集事件。設備供應商很難准確預測工廠需要的所有收集事件。設備供應商需要升級其在工廠中的GEM接口軟件。

當鏈接到收集事件時,數據報告的大小是多少?

GEM允許單個數據變量值或狀態變量的值為任意數據類型的數組或結構體,包括浮點數、字符串或整數。單個數組的大小限制為16.777215 MB,消息的總大小限制為4.294967295 GB

 

第三章數據輪詢

GEM是一種工業標准,它定義了工藝設備和工廠主機軟件之間, 為了達到監視和控制目的所建立通信的標准方法。通過連接GEM設備,工廠可以立即體驗到運營效益。工廠主機可以通過多種方式收集數據。之前的一篇博客文章討論了使用收集事件報告收集數據,其中數據基於設備狀態的變化被推送到主機。除了事件報告之外,工廠主機通常還需要輪詢設備的當前數據值。數據值可以由主機直接請求,也可以在跟蹤報告中定期采樣。這就是所謂的數據輪詢,也是今天討論的主題。

數據的類型

GEM接口中有三種類型的數據:

數據變量(DV) —— 設備事件發生時可以收集的數據項。此數據只保證在事件上下文中有效。例如,GEM接口可能提供一個名為PPChanged的事件(當配方發生更改時觸發)。該接口還可以提供一個名為changed recipe的數據變量。此數據變量(DV)的值僅在PPChanged事件的上下文中有效。在其他的時間輪詢該值可能會有無效或意外的數據。

狀態變量(SV) —— 包含設備信息的數據項。該數據保證在任何時候都是有效的。例如,該設備可能在流程模塊中有一個溫度傳感器。GEM接口可以提供模塊溫度狀態變量。主機可以在任何時候請求這個狀態變量(SV)的值,並期望這個值是准確的。

設備常數(EC) —— 包含設備設置的數據項。設備常數決定設備的行為。例如,GEM接口可能有一個名為MaxSimultaneousTraces的設備常量(EC),該常量指定可以同時從主機請求的最大跟蹤數。設備常數的值總是保證是有效的和最新的。

數據屬性

上面列出的三種數據類型都有一些類似的有助於定義數據的屬性。設備供應商需要在GEM手冊中提供這些屬性,以便工廠主機能夠與數據進行交互。一些重要的數據屬性有:

ID —— 在該GEM接口中唯一的數字ID。這些ID可以按數據類型分為SVID(狀態變量ID), DVID(數據變量ID)ECID(設備常量ID)

名稱 —— 數據項的可讀名稱。
格式 —— 數據項的數據類型。

數據格式可以是簡單類型(數字、ASCII、布爾值),也可以是復雜類型(數組、列表、結構)。例如,數字類型可以是I1I2I4I8(不同字節長度的帶符號整數類型)U1U2U4U8(無符號整數類型)F4F8(浮點類型)。列表和數組類型會在數據項中包含多個值。例如,圖像數據通常采用字節數組作為數據格式。

結構類型包含特定類型的數據。例如,一個變量可以表示一個Slot map,其中包含Carrier信息,Slot列表和晶圓的存放信息。

—— 數據項的實際值。數據值采用精確、高效、自描述的二進制格式,從而主機知道如何解釋數據。數據格式允許更有效地收集更多的數據。

收集事件(CE)和警報也有ID和名稱。這些內容將在其他博客文章中討論,但是了解本文的提到的這些屬性非常重要,因為這些屬性也可以被Host所查詢。

數據輪詢

如前所述,工廠主機經常通過它所定義的跟蹤報告和事件報告定期獲得數據。GEM還為工廠主機提供了一種可以根據他的需要去輪詢設備數據的方法。

狀態變量

主機可以在任何時候通過發送一條包含狀態變量IDSVID)列表的消息來查詢這些狀態變量(SV)的當前值。如果該列表的長度為1,則只返回單個狀態變量(SV)的值。如果列表的長度為零,則返回GEM接口中定義的所有狀態變量(SV)的值。這些值會包含在在設備回復的S1F4消息中。

主機還可以通過向設備發送S1F11消息向設備請求狀態變量(SV)名稱列表。上面提到的列表規則也適用於此消息。返回消息將包含每個狀態變量(SV)的條目,包括狀態變量IDSVID)、名稱和單位。

設備常量

狀態變量(SV)的工作方式類似,主機還可以通過發送一條S2F13消息來查詢GEM接口中定義的設備常量的值。這些值會包含在在設備回復的S2F14消息中。

與狀態變量(SV)類似,可以使用S2F29消息查詢設備常量的名稱列表。

數據變量

由於數據變量只在集合事件的上下文中有效,因此沒有輪詢數據變量值的方法。數據變量的值只能在收集事件報告中上報給主機。

其他

除了上面討論的數據輪詢方法外,還可以通過輪詢從設備獲取以下信息:

收集事件(CE) —— 主機可以查詢GEM接口上可用的收集事件,以及與每個CE關聯的DVs。這些是使用S1F23消息請求的。
警報 —— 主機可以通過發送一個列有所期望的警報ID列表的S5F5消息來查詢設備上有哪些警報是可用的。返回的消息將列出與ALID關聯的警報ID和警報文本。每個GEM接口都需要有兩個狀態變量。AlarmEnabled包含設備上所有啟用警報的ID列表。AlarmsSet包含設備商所有當前處於設置狀態的警報ID。由於這些值是狀態變量,所以主機可以在任何時候查詢它們的值。
MDLNSOFTREV —— S1F1(你在嗎?)消息的回復將包含設備模型類型(MDLN)和軟件修訂版本(SOFTREV)
DateTime ——主機可以使用S2F17消息請求設備的日期和時間,也可以使用S2F31消息同步設備的時間。GEM要求設備維護一個包含當前時間的時鍾狀態變量。允許主機查詢和同步時間使得可以對系統上幾乎同時發生的事件進行排序。

跟蹤數據收集

跟蹤數據收集提供了一種定期采樣數據的方法。這種基於時間的數據收集方法對於跟蹤一段時間內的數據變化趨勢或重復的應用,或者監視連續的數據非常有用。 在創建跟蹤的定義時,主機需要提供以下內容:

采樣周期 —— 樣本之間的時間。以百分之一秒為最小單位,因此可以使用跟蹤非常快速地收集數據。能夠支持10赫茲的采樣間隔數據的設備很常見。
數據組大小 —— 跟蹤報告中包含的樣本數量。
狀態變量 —— 跟蹤報告中包含的狀態變量列表。
總樣本數 —— 在跟蹤的整個生命周期內要采集的樣本數量。
跟蹤請求ID —— 跟蹤請求的標識符(GEM只允許整數類型的跟蹤ID)

主機使用S2F23消息定義跟蹤請求。跟蹤報告使用S6F1消息從設備發送到主機。

跟蹤報告樣本

假設一個設備正在處理一個晶圓片,這個過程需要5分鍾。重要的是要保持卡盤溫度在一定的可接受范圍內,並確保腔室壓力保持在指定的水平以下。每隔15秒采樣一次這些狀態變量值就足夠了,但是我們可以創建數據組,實現每分鍾只接收一次報告。主機可以發送一條包含如下跟蹤配置的S2F23消息:

跟蹤ID : 100 (ID必須是整數)
采樣周期 : 00001500(15秒采樣一次)
總樣本:75(15秒采樣5英寸)
數據組大小: 4
SVID列表 :
300(包含卡盤溫度信息的狀態變量的ID)
301(包含室壓信息的狀態變量ID)

一分鍾后,第一個跟蹤報告將來自設備發出的的S6F1消息。這條消息將包含以下信息:

100(跟蹤ID)
4(最后一個樣本號)
2018-01-22T14:20:34.8(日期格式取決於時間格式設備常數)
狀態變量列表:(長度為8 : 2 個狀態變量,數據組大小為4)

219.96(第一次采樣卡盤溫度)
0.0112(第一次采樣壓力)
219.97(第二次采樣卡盤溫度)
0.0122(第二次采樣壓力)
219.97(第三次采樣卡盤溫度)
0.0120(第三次采樣壓力)
219.96(第四次采樣卡盤溫度)
0.0119(第四次采樣壓力)

再過一分鍾,跟蹤報告可能如下所示:

100(跟蹤ID)
8(最后一個樣本號)
2018-01-22T14:21:34.8(日期時間顯示比第一個跟蹤晚一分鍾)
狀態變量列表 : (長度為8: 2 個狀態,數據組大小為4)

219.96(第五次采樣卡盤溫度)
0.0112(第五次采樣壓力)
219.97(第六次采樣卡盤溫度)
0.0122(第六次采樣壓力)
220.01(第七次采樣卡盤溫度)
0.0120(第七次采樣壓力)
220.00(第八次采樣卡盤溫度)
0.0119(第八次采樣壓力)

以一分鍾為間隔,后續還將收到三份報告。主機可以檢查報告中返回的值,並在值超出預期范圍時做出相應的處理。

結論

如果主機想在特定的時間點檢查一個值,它可以使用S1F3輪詢狀態數據。如果希望在給定的時間內連續收集數據,則可以設置跟蹤報告。

使用本博客中概述的數據采樣方法,將允許主機應用程序在需要時輪詢所需的數據。GEM提供了從設備請求數據的靈活性,允許主機在給定的時間點查詢值,或者使用跟蹤定期采樣樣。

 

第四章 GEM 工廠應用支持

工廠如何處理這些數據?

與本系列中其他涉及SEMI E30 GEM(通用設備模型)標准的特定特性和功能的文章不同,本篇博客闡述了許多使用設備上收集到的數據的工廠應用程序。

此外,由於我們經常聽到這樣的問題:“工廠實際如何使用哪些希望我們提供的各種類型的設備信息?”這篇文章將總結出支持這些應用程序所需的具體數據。這個列表並沒有涵蓋所有的內容,但是應該可以讓您了解由GEM數據收集支持其目標的工廠受益者。下圖說明了關鍵性能指標(kpi)、負責優化它們的受益者、用於實現此目的的應用程序以及這些應用程序所需的數據之間的關系。

分享這類信息最有效的方式是表格形式。在一組相關的應用程序中(例如,調度、預防性維護),應用程序通常按照復雜性遞增的順序列出,這也是工廠應用程序開發人員實現的可能順序。

 

在某種程度上,在上面的表中描述的應用程序數據可以跨設備類型進行標准化,這樣的話就有可能創建通用的工廠的應用程序, 只需要一個從供方定義的GEM ID (收集事件id、狀態/數據變量,常量,設備等)到通用應用方的對應列表。但是這是另一個關於GEM上下文中即插即用概念的主題。

我們希望這個解釋能夠幫助您理解設備信息對於使用它的工廠是多么有價值,從而明白在您將來設計的GEM接口中提供一組豐富的事件、變量和其他詳細信息是多么重要。

 

第五章報警

以前的文章已經討論了允許通過GEM接口收集數據的功能,以便在最近的文章中描述的工廠應用程序能夠分析這些數據。在這篇文章中,我們將回到對SEMI E30 GEM(通用設備模型)標准的特定特性和功能的討論,特別是對設備錯誤情況的管理。

在一個完美的世界里,一切都按計划進行,但在現實中,事情總是會出錯。成功的秘訣是能夠知道什么時候出了問題,然后做出適當的反應。

就像家庭報警系統一樣,半導體晶圓廠也想知道什么時候發生了不好的事情。他們想防止正在加工的材料被報廢。報警管理使設備能夠在出錯時通知主機,並提供出錯信息。GEM標准將報警管理定義為設備能夠通知主機對設備上發生的報警情況和對報警情況進行管理的能力。

GEM中,一個報警可以是指設備上的任何可能危及正在加工的人員、設備或材料的異常情況。例如,如果技術人員打開一個蓋板來替換組件,設備應該發出報警,通知主機在當前狀態下操作設備是不安全的。另一個例子可能是,如果一個設備需要高溫進行加工,但是傳感器檢測到低溫條件,它應該觸發報警,因為在這些條件下運行過程可能會損壞正在加工的材料。當出現報警情況時,設備制造商也有責任制止設備上的不安全活動。設備制造商最清楚設備上需要什么樣的特殊報警,以確保人員、設備和材料的安全。

通常,在報警條件發生時,能得到更多的設備中的狀況信息是有用的。向傳達額外的信息是非常有價值的,但是沒法通過正常的報警報告發送/確認消息。為了提供一種途徑獲取額外信息,GEM要求為設備上每種可能的報警條件定義兩個收集事件——一個事件用於設置報警,另一個事件用於清除報警。這些收集事件使得GEM事件數據收集機制可以被用於在報警更改狀態時向主機發送額外的相關信息。

除了提供報警狀態更改的時間外,設備上的報警管理必須允許主機獲取所有報警id和相關報警文本的列表。主機還必須能夠啟用/禁用設備上的單個報警的報告,並查詢設備以獲得當前啟用報告的報警列表。

報警的狀態圖不是很令人興奮,但是它滿足了一個至關重要的需求。下圖為報警狀態圖:

GEM報警只有兩種狀態: 每個報警要么處於設置狀態,要么處於清除狀態。它簡單但是有效。

報警管理不是復雜的事情,但通過有效地使用報警管理,晶圓廠可以仔細的監控其工藝設備的健康狀況,並將其對生產良率的負面影響降到最低。

 

第六章配方管理

在幾篇SECS/GEM系列博客文章(包括收集事件、數據輪詢和警報)之后,我們現在討論GEM特性的特性和優點,稱為配方管理。我們將介紹配方的定義, 配方管理是什么意思,,以及為什么需要這個功能!

什么是配方?

配方是一組描述設備應如何處理其材料的指令。配方內容由設備供應商定義。

什么是配方管理?

配方管理允許工廠主機在設備之間傳輸配方。它還要求設備在設備上的配方發生變化時通知工廠主機。

為什么需要這個特性?

幾乎所有的半導體工廠都需要這個特性來確保配方的完整性並支持可追溯性。主機將設備上已批准的配方上傳並保存下來供以后使用,以確保菜譜不會被更改。為了可跟蹤性,配方通常與工藝數據一起保存。

配方管理是如何工作的?

配方通過SECS消息在主機和設備之間傳遞。有幾組SECS消息被用於這個功能。E30 GEM列舉了格式化、非格式化和大型配方的消息集。這里將不討論大型配方的消息集。

當操作人員在設備上修改配方時,設備還需要通知主機。生成的PPChange收集事件還需要伴有兩個數據變量:載有被更改的配方ID的變量PPChangeName以及載有包含更改類型(創建、刪除和編輯)的變量PPChangeStatus。當配方被傳到設備上時,設備應對內容進行驗證。如果配方無效,則應該生成一個PPVerificationFailed的收集事件,伴有包含驗證失敗信息的PPError數據變量,以將問題通知主機。如果驗證失敗,該配方將不被使用。

識別

每個配方都由一個名為process program IDPPIDASCII名稱標識。工廠主機和設備GEM接口在配方操作中使用該名稱。

持續性

GEM 接口中, 配方是持續性的。如果主機斷開並重新連接,或者設備重新啟動,GEM接口仍將記得配方。此外,大多數工廠主機會將配方保存在工廠端。

使用哪些消息?

下面是與集合事件相關的每個主要消息的總結。注意,“S”表示“F”表示函數SF一起唯一地標識消息。

所有配方

消息編號

方向

描述

S7F17

主機 -> 設備

從設備上刪除一個配方。

空列表將刪除設備上的所有配方。

S7F19

主機 -> 設備

請求設備上所有可用的配方列表

 

非格式化配方

消息編號

方向

描述

S7F1

主機 <- 設備

設備要求上傳一個配方

S7F3

主機 <- 設備

設備上傳一個配方到主機

S7F5

主機 <- 設備

設備請求從主機獲取一個配方

S7F1

主機 -> 設備

主機要求下傳一個配方到設備

S7F3

主機 -> 設備

主機下傳一個配方到設備

S7F5

主機 -> 設備

主機請求從設備獲取一個配方

 

格式化配方

消息編號

方向

描述

S7F1

主機 <- 設備

設備要求上傳一個配方

S7F23

主機 <- 設備

設備上傳一個配方到主機

S7F25

主機 <- 設備

設備請求從主機獲取一個配方

S7F1

主機 -> 設備

主機要求下傳一個配方到設備

S7F3

主機 -> 設備

主機下傳一個配方到設備

S7F5

主機 -> 設備

主機請求從設備獲取一個配方

S7F29

主機 <- 設備

設備請求發送配方驗證結果

S7F27

主機 <- 設備

設備發送配方驗證結果

 

有關配方管理的常見問題

可以傳送一個多大的配方?

對於未格式化的菜譜消息,菜譜要么是單個ASCII字符串,要么是二進制數組值。單個數組值被限制為16.777215 MB

格式化的配方消息,將配方分解為一個項目列表。單個數組值被限制為16.777215 MB。消息的總大小被限制為4.294967295 GB

 

第七章文檔

正如SECS/GEM系列的特性和優點的第一篇文章所指出的,SECS/GEM標准定義了一個可以在任何設備上使用的標准化接口。GEM接口通過狀態變量、數據變量、收集事件、警報、數據格式、錯誤代碼、SECS-II消息和其他可選的GEM功能公開設備的功能。GEM標准要求每台設備都附帶文檔; 確保工廠擁有使用設備GEM接口所需的信息。該文檔通常稱為GEM手冊。

GEM手冊可以以多種形式分發。目前,大多數GEM手冊都是以WordExcelPDF文檔的形式提供的。GEM手冊中的大量信息被用於做出購買決策、開發主機軟件和測試設備。對於一個功能完整的GEM接口,GEM手冊必須包含以下主題: 狀態模型、場景、數據收集、警報管理、遠程控制、設備常量、流程配方管理、物料移動、終端服務、錯誤消息、時鍾、假脫機、控制、支持的SECS-II消息、GEM遵從性聲明和數據項格式。為了使這篇文章保持一個合理的長度,我們將只討論一些必要的主題。

GEM遵從性聲明

遵從性聲明是要審閱的第一個主題之一。它是一種快速、簡單地了解設備接口特性的方法。制造商需要標記在設備上實現了哪些GEM功能,以及這些功能是否以符合GEM標准的方式實現。

狀態模型

狀態模型是GEM的基本功能,因此可以在每個設備上實現。該功能定義了設備的通信、控制和假脫機行為。設備必須提供處理狀態模型。但是,定義出一個適用於所有設備的工藝狀態的狀態機是不可能的。本標准規定了所有設備應具有相同的加工行為。每個狀態模型都必須用狀態模型圖、轉換表和每個狀態的文本描述來記錄歸檔。關於每個狀態模型的一致和詳細信息使工廠能夠在得到GEM手冊之后立即開始編寫主機應用程序。

警報、收集事件、設備常數、數據變量和狀態變量

設備收集數據的一大部分都是警報、收集事件和變量。所以需要將他們包含在GEM手冊中並不意外。設備上的每個警報都應該在GEM手冊中有其ID、名稱、描述和相關的Set/Clear事件。每個集合事件的文檔應該包括ID、名稱、描述和關聯變量列表。所有變量的文檔將包括ID、名稱、描述和數據類型。還應該在適當的時候提供變量默認值或值范圍的信息。雖然不是必需的,但通常將所有這些信息顯示在五個容易找到的表中。對於以下每一類都有一個表: 警報、收集事件、設備常量、數據變量和狀態變量。參見下面的示例。

Alarms

Collection Events

Status Variables

遠程控制

一旦工廠能夠從設備中收集數據,他們就開始研究如何控制設備。遠程控制是GEM功能,它允許主機應用程序請求設備執行一個操作。所有遠程命令都應該包含在手冊中,包括它的名稱、描述以及可能隨命令一起發送的每個命令參數的詳細信息。命令參數的詳細信息應該包括名稱、格式和描述。下面顯示了一個示例。

SMN SEDD

GEM手冊很少采用易於在軟件中解析的格式。這通常會導致重復代碼,並進行一些小的更改,以便與其他設備通信。SEMI E172 SECS設備數據字典(SEDD)E173 SECS消息表示法(SMN)是兩個標准,它們可以極大地提高主機應用程序的靈活性和可重用性。SEDD是一個易於在軟件中分布和解析的xml文件。SEDD可以被認為是一個現代化的GEM手冊,因為它包含了與GEM手冊中相同的信息。例如,SEDD文件包含關於每個變量、收集事件、警報和受支持的SECS-II消息的詳細信息。SEDD文件使用SMN表示數據項、變量和SECS-II消息。SMN也是XML格式,它是第一個定義表達數據項和SECS-II消息的表示法的標准。這意味着單個應用程序可以讀取SEDD文件,進行一個簡短的配置過程,然后立即開始使用設備的GEM接口。這些特性允許單個應用程序用於多個設備,而不是為每個設備創建略有不同的變體。

總結

GEM手冊是GEM標准所要求的與每個設備一起提供的重要文檔。當遇到關於設備的GEM接口的問題時,GEM手冊應該是尋找答案的首選。SEMI也在通過更新現有標准和創建新標准,繼續改進GEM手冊的內容和靈活性。

 

第八章設備終端服務

在本系列的幾篇文章討論了數據收集、事件、警報、配方管理和文檔之后,本文重點討論GEM標准的Twitter - 設備終端服務(Terminal Services)。我們將研究什么是終端服務(Terminal Services),為什么需要它們,以及它們的工作機制。

什么是終端服務(Terminal Services)?

設備終端服務允許工廠操作員從設備工作站與主機交換信息。主機可以在設備的顯示設備上顯示信息。它還允許設備的操作員向主機發送信息。設備必須能夠顯示主機傳遞給它的信息,供操作員注意。

為什么需要這個特性?

使用終端服務的例子如下:

  1. FDC軟件通知主機進程模塊有偏移需要處理。
  2. 主機打開信號燈塔上的操作員通知燈。通知燈亮起時需要說明燈亮起的原因。
  3. 主機發送一條終端消息說FDC軟件檢測到偏移,操作員應該解決這個問題。
  4. 與信號塔燈一起,終端服務通知在工具上處於活動狀態。
  5. 操作員看到並確認消息。
  6. 可選:有不同的恢復方法,但是操作員可以在問題解決后向主機發送終端消息。

終端服務功能如何工作?

當主機向設備發送終端消息時,需要設備向操作員顯示該消息。該顯示器必須能夠顯示最多160個字符(甚至比使用Twitter在一條tweet中發送的字符還要多),但也有可能會顯示更多字符。設備的顯示設備必須具有一種機制,用於通知操作員一條消息已被接收,但尚未被操作員確認。該消息將繼續顯示,直到操作員確認該消息為止。設備必須提供一個方法,例如一個按鈕,讓操作員確認消息。操作員的消息識別將導致一個收集事件,該事件會通知主機操作員已接收到信息。設備應用程序不需要翻譯從主機發送的數據。它只是為操作員提供信息顯示。

如果主機發送的新消息是在操作員確認前一條消息之前發送的,則新消息將覆蓋前一條消息。主機可以通過發送零長度的消息清除未確認消息(包括指示符)。零長度的消息不會被認為是待確定的消息。設備還必須允許操作員將輸入的信息從操作員的設備控制台發送到主機。

使用哪些消息?

消息ID

方向

描述

S10F3

H->E

主機向設備發送文本信息,以供顯示。

S10F1

H<-E

操作員向主機發送文本信息。

S10F5

H->E

(可選)主機發送多塊顯示的消息。如果不支持多區塊,設備將回復S10F7表示不允許多區塊消息。

S6F11

H<-E

設備向主機發送收集事件通知終端服務消息已被確認。

 

 

第九章用戶界面

我記得作為一個新的童子軍,我們計划去我家附近的一個原始山區遠足。我們從地圖上學到的第一件事就是在哪里可以找到圖例。地圖圖例包含了閱讀地圖所需的重要信息,比如指出哪個方向是北。既然我們知道在哪里可以找到圖例,我們就可以確定地圖的方向,這樣在我們計划徒步旅行時就能找到它了。

在典型的半導體或電子裝配工廠中,大多數設備都有一個用戶界面,其中包含許多關於設備的信息。大多數設備還包含許多用於控制或操作設備的屏幕。利用GEM,一個工廠主機系統可以對設備進行控制,以及采集工藝過程中生成的重要數據。

就像地圖一樣,在一個設備的用戶界面上有很多可用的信息。有時很難找到那些主機系統需要的,用來控制和與設備通信的重要信息。GEM標准提供了關於如何將這些關鍵項目在用戶界面上呈現和控制的指南。例如,如果主機向設備操作員發送關於他們需要執行的任務的信息,GEM終端消息指南規定,這些信息必須保留在設備的用戶界面上,直到操作員確認他們已經閱讀了它。

SEMI E30標准定義了制造設備通信和控制通用模型(GEM)的規范。除了提供制造自動化所需的通用設備行為和通信功能集的定義外,該標准還提供了關於哪些項必須出現在設備用戶界面上以及如何表示這些項的要求。用戶界面要求由標准定義的通信狀態、終端服務新消息指示、終端服務消息確認按鈕、通信狀態默認值和通信狀態選擇說明。

這似乎是一件小事,但就像知道地圖上找到圖例就能理解地圖上的線條和符號的一樣,GEM為如何理解設備界面上所展示的那些對與工廠主機之間通信尤為重要的信息提供了幫助。

 

第十章 GEM消息假脫機功能

假脫機消息的目的

即使是最健壯的計算機網絡也會經歷通信失敗。不管原因是什么,一個小故障都可能導致大量的關鍵任務數據丟失。GEM通過提供消息假脫機功能來調停數據的丟失

假脫機的定義

假脫機是這樣一種功能,設備可以在通信失敗時對發送給主機的消息進行排隊緩存,然后在通信恢復時發送這些消息。

假脫機的好處

自動化工廠是數據驅動的。對數據進行提取和分析,以做出影響工程和管理團隊如何應對的決策,以確保產品產量高而廢品率低。

這些數據的缺失可能導致錯誤的判斷甚至猜測。假脫機是一種備份系統,它可以確保存儲和恢復這些數據,從而降低丟失有價值數據的風險。

GEM功能需求

然而,假脫機並不是GEM的要求,如果要實現這個附加的功能,就必須正確地實現。下面是實現兼容假脫機接口的一些要求。

設備必須通過設備常量“EnableSpooling”給主機提供啟用和禁用假脫機的能力。該EC由設備發布,主機可以選擇所需的狀態。

在實現假脫機時,它必須對所有相關的主要消息都有效,並且能夠使用S2F43/F44交互進行訪問。Stream 1消息要被排除在外。主機試圖為Stream 1 “設置spool”的指令將被拒絕。

非易失性存儲(NVS

設備負責分配足夠的非易失性存儲器,可以存儲該設備的至少一個工藝周期需要假脫機的所有消息。NVS還將包含所有與假脫機相關的狀態變量。NVS用於此數據,因此,如果發生斷電,數據將被持久化。

假脫機實現中主機端的責任

消息假脫機功能也需要主機的參與,以在通信中斷后成功恢復。在主機程序能夠正確的處理整個狀態機中可能發生的所有情況之前,最好將假脫機設置為禁用狀態。禁用假脫機比管理不當的假脫機要好。

一旦重新建立了通信,主機必須管理對假脫機消息的請求。主機還可以在必要時從設備中清除假脫機消息文件。

結論

雖然假脫機不是GEM的基本需求,但是如果實現了它,就必須正確地執行。當啟用假脫機時,主機和設備軟件都有責任確保遵守GEMGEM假脫機避免了潛在的有價值數據丟失,並為設備和主機軟件提供了一個易於遵守的標准。

 

第十一章協議層

協議層的用途

協議層封裝數據,並在工廠主機和設備GEM接口之間可靠地傳輸數據。

協議層定義

協議層實現了通過工廠主機和設備GEM接口之間的連線發送消息所用到的傳輸技術和數據打包算法,。

SEMI E5標准,半導體設備通信標准II 消息內容(SECSII), 定義了用作數據的SECS消息,以及如何將它們打包到二進制緩沖區中進行傳輸。

SEMI E37E37.1標准高速SECS消息服務(HSMS)定義了一種協議,用於在TCP/IP連接上交換SECS消息。這是SECS/GEM中使用最多的傳輸技術。

HSMS協議棧

SEMI E4標准,即半導體設備通信協議標准I 消息傳輸 (SECS- I),定義了在RS-232上交換SECS消息的機制。這通常用於較舊的設備或設備內部的某些硬件,例如EFEM控制器。

本文的其余部分將重點討論通過HSMS傳遞的SECS消息。

協議層的好處

GEM中的協議層維護連接並檢測連接丟失,因此任何一方都可以采取適當的操作,比如**假脫機。
協議層定義握手機制,以確保在需要時傳遞消息。

協議層連接是工廠主機和設備之間的點對點連接。它是一個沒有廣播功能的專用連接。這使得預測網絡負載變得更加容易。

數據密度

SECS/GEM傳輸數據開銷小、密度高。這意味着給定數據集的網絡帶寬使用更少。
為了便於說明,我們來看一個典型的事件報告示例,並將SECS/GEM消息傳遞與某種程度上等價的XMLJSON消息進行比較。

以一個典型的GEM接口為例,該接口為id使用無符號的4字節整數,以及一個包含8字節浮點數和4字節整數的事件報告。下表以SECS/GEM E5格式以及等效的JSONXML格式顯示了此消息的一個示例。

XML數字可以根據鍵/元素名稱進行一些更改,上面的只是許多可能的表示之一。

下圖顯示了示例消息的數據密度比較。實際數據大小為24字節整數+ 28字節浮點數+ 14字節事件id + 14字節報告id = 32字節的實際數據。開銷是通過從消息的總字節數中減去實際數據大小來計算的。

對於示例消息SECS的數據密度,數據密度百分比如下圖所示。數據密度百分比由(實際數據)/開銷*100計算。

現在,如果我們將示例消息更改為包含1008字節浮點數,則數據密度百分比圖將改變為如下圖。注意JSONXML相對相同,但是SECS/GEM數據密度增加到78%。數據密度百分比由(實際數據)/開銷*100計算。

SECS/GEM編碼的開銷非常小。消息的開銷是描述消息的頭部的10個字節,加上消息體大小的14個字節。對於SECS消息中的任何4字節整數或浮點數,都將通過網絡發送6個字節,4個字節表示整數值+ 1個字節表示類型+ 1個字節表示數據的長度(以字節為單位)。同樣,對於任何8字節的整數或浮點數,都將發送10字節。對於字符串值,長度將是字符數加上24字節。在SECS消息中出現列表(上面可讀示例中的L)時,將向消息添加24個字節。

SECS/GEM數據中,數字數組尤為高效。數組的開銷是類型為1字節,數組長度為14字節,加上數據的本身大小。例如:一個由104字節整數組成的數組將占用42字節,即數據密度為95%!

JSON示例中,一個4字節的整數需要16個字節加上表示該整數所需的字符數,因此需要1728個字節。浮點數的開銷相同,但可能需要更多字符來表示值。

XML中,開銷基於XML元素名稱的大小。使用上面示例中的元素名,對於任何4字節整數,跨連接的字節數將是9 +表示該整數所需的字符數,所以是1021字節。浮點數取決於用來表示值的字符串格式。

總而言之,通過查看每項數據所需字節大小,SECS/GEM非常密集。以4字節整數為例,其中SECS/GEM6個字節,JSON示例是1728個字節,XML示例是1021個字節,隨着參數數量的增加,您會發現開銷確實很重要。300mm半導體設備預計每秒每個工藝模塊向主機傳輸1000個參數。對於2個模塊的設備,這將導致僅用於數據的字節數如下: SECS/GEM 12K字節, JSON 34K-56K, 如實例的XML 需要20K-42K。這些數字不考慮消息其余部分的大小,只考慮與參數值相關的實際部分。如果數據在大量消息中傳輸,而每個消息的值很少,那么網絡負載就更糟了。在所有情況下,更少、更大的消息總是更好。

根據使用的傳輸協議,XMLJSON也可能增加開銷。例如,XML通常使用SOAP通過HTTP傳輸,這就為每個消息增加了額外的兩層開銷和更多的字節。SECS/GEM所顯示的字節數是實際通過TCP/IP上的網絡傳輸的。

無數據翻譯

SECS/GEM中傳輸數值數據時不需要轉換。數字以其原始格式傳輸。例如:8字節浮點數以其8字節表示形式傳輸,沒有經過任何轉換、截斷或舍入。

任何協議,如JSONXML,都必須將這些8字節浮點數轉換為文本表示形式。這需要計算用於編碼和解碼的資源,並且需要更多的字節。IEEE754要求17位十進制數字將8字節浮點數精確地表示為字符串。將符號、小數點、指數和指數符號的字符相加,得到21個字符。這是SECS/GEM通過網絡發送的兩倍多。

環路保證

HSMS定義了一種稱為Link Test的環路保證機制。如果沒有活動的消息交換,協議層將啟動一個計時器。每次計時器過期時,都會交換一條協議消息以確保連接仍然是打開的。

安全

HSMS沒有定義安全性。沒有連接方的驗證,連接不需要憑證或證書。數據未使用任何普通加密算法加密; 然而,數據在數據打包過程中是模糊的,通常是人類無法讀懂的。由於工廠網絡與外部世界隔離,安全通常不會被視為一個問題。

結論

使用HSMSSECS/GEM協議層提供了在工廠主機和設備之間交換准確數據的非常有效的方法。

 

第十二章消息日志

1977年,經典電影《第三類接觸》上映。在電影的最后,有一段外星人和人類之間的戲劇性的對話。其中一位科學家說:“我希望有人把這一切都記下來。

他們真正想要的是消息日志!

就像軟件日志對於應用程序的故障診斷很重要一樣,記錄工廠主機和生產設備之間的詳細消息交互對於故障診斷也很重要。

例如,主機發送一個命令,設備根據消息進行操作,但是有些事情並沒有如預期的那樣工作。將發送給設備的消息和設備的回復的消息與來自設備的其他日志一起查看,非常有助於確定問題位於在哪兒。

用於顯示/表示已記錄消息的格式也非常重要。SECS消息格式的最新行業標准是SEMI - E173,即XML SECS- ii消息符號規范(SMN)

舉個例子:

<?xml version="1.0" encoding="utf-8"?>
<SECSMessageScenario xmlns="urn:semi-org:xsd.SMN">
                <Comment time="2018-02-05T18:19:20.365Z">State Change NotConnected</Comment>
                <Comment time="2018-02-05T18:19:20.400Z">State Change NotSelected</Comment>
                <HSMSMessage time="2018-02-05T18:19:20.394Z" sType="Select.req" direction="H to E" txid="1">
                                <Header>FFFF0000000100000001</Header>
                </HSMSMessage>
                <HSMSMessage time="2018-02-05T18:19:20.417Z" sType="Select.rsp" direction="E to H" txid="1">
                                <Header>FFFF0000000200000001</Header>
                                <Description>Communication Established</Description>
                </HSMSMessage>

這是一個S5,F5的例子:

<SECSMessage s="5" f="5" direction="H to E" replyBit="true" txid="7" time="2018-02-05T18:19:20.507Z">
    <SECSData>
        <UI4 />
    </SECSData>
</SECSMessage>
<SECSMessage s="5" f="6" direction="E to H" replyBit="false" txid="7" time="2018-02-05T18:19:20.507Z">
    <SECSData>
        <LST>
            <LST>
                <BIN>0</BIN>
                <UI4>1</UI4>
                <ASC>Alarm 1 Text</ASC>
            </LST>
        </LST>
    </SECSData>
</SECSMessage> 

SMN格式非常適合:

  • 以清晰的方式捕獲HSMS頭信息
  • 以精確的二進制格式記錄消息
  • 使用軟件讀取日志
  • 創建主機或設備模擬器,因為很容易從軟件應用程序讀取日志並回放
  • SMN日志中提取數據

日志可以被設備、主機甚至像CimetrixCIMSniffer實用程序這樣的網絡嗅探器捕獲。

CimetrixLogviewer實用程序也支持SMN日志:

有了這些標准和工具,就沒有理由像《親密接觸》中的科學家那樣,希望這些信息被記錄下來。去打開日志!

CimetrixCIMConnectHostConnectSECSConnect都提供SMN格式的消息日志記錄。

 

第十三章GEM 控制狀態

什么是GEM 控制狀態?

GEM板的控制狀態是E30 GEM的基本要求之一。它定義了主機和設備之間的協作級別,並指定了操作員如何在不同級別的主機控制狀態下進行交互。

在半導體工廠中,主機或操作員可以控制設備的加工。雙方同時控制設備會帶來問題。所以當一方控制設備時,另一方所能進行的操作將受到限制。例如,如果操作員暫停了工藝處理,則不應允許主機發送恢復處理或啟動新作業的命令。GEM控制狀態就是為了防止此類問題的發生而被建立的。

控制狀態如何工作?

控制狀態提供三個基本級別的控制。每個級別都描述了主機和設備端可以執行哪些操作。

遠程

  • 主機可以最大限度地控制設備。
  • 設備可能會限制當地操作員控制設備的能力,但這不是標准的要求。主機必須能夠處理操作員在設備上調用的意外命令。
  • 主機使用GEM遠程命令來調用設備上的命令。
    本地

本地

  • 操作者可以盡可能地控制設備。
  • 主機可以完全訪問信息。主機可以使用其他GEM特性(如收集事件、跟蹤和狀態數據收集)收集數據。
  • 限制主機如何影響設備操作:
    • 禁止啟動處理(例如START)或導致物理移動的遠程命令。在處理期間,還禁止影響處理的遠程命令(停止、中止、暫停、恢復)
    • 允許使用其他不啟動處理、不會導致物理移動或影響處理的遠程命令。
    • 在處理期間,禁止主機修改任何影響該進程的設備常數。
    • 不影響當前運行進程的設備常數可以更改。
    • 當不處理時,所有的設備常數都是可變的。

離線

  • 操作者對設備有完全的控制。
  • 主機對設備操作沒有控制,信息收集能力非常有限。
  • 設備將從主機接收的唯一消息是:
    • 用於建立GEM通信的消息(S1F13/F14)
    • 請求**聯機控制狀態(S1F17),但僅限於當前活動狀態為主機脫機時(控件狀態模型上的轉換#11)
    • 在嘗試在線時收到的S1F2“Are You There Response”
  • 設備可能發送給主機的唯一主要消息是:
    • 用於建立通信的消息(S1F13)
    • S9Fx消息,但僅響應設備離線時通常響應的消息(S1F13S1F17)
    • 當進入“Attempt ON-LINE”子狀態時,S1F1 “Are You There Request” 會被發送到主機。此消息用於從主機獲得進入在線狀態的權限(轉換#5)
  • 離線時沒有不會對消息做假脫機處理。

控制狀態模型的設計使設備操作員對狀態機的控制多於對主機的控制。這將保護操作員不被主機發起的意料之外的狀態更改影響。

  • 設備操作員可以通過操作界面選擇哪個在線子狀態處於活動狀態。主機端不能選擇哪個在線子狀態是活動的。
  • 設備端可以將控制狀態模型放入設備離線狀態(轉換#6)。當處於這種狀態時,主機無法請求設備進入在線狀態。
  • 主機端可以將控制狀態放入主機離線狀態(轉換#10),但是設備端可以拒絕此請求。當處於主機離線狀態時,設備端總是可以通過先切換到設備離線狀態(轉換#12),然后嘗試在線(轉換#3),來進入在線狀態。

操作界面需求

設備必須提供一種顯示當前控制狀態的方法,以便操作者知道誰控制着設備。

設備必須提供一個瞬時開關來啟動到設備離線狀態的轉換,另一個開關來嘗試從設備離線狀態切換到在線狀態。這可以是前面板上的一個硬件開關,但通常在軟件中使用按鈕控件實現。

設備必須提供一個離散的雙位置開關,操作員可以使用該開關指示所需的在線子狀態(本地或遠程)。這可以是前面板上的一個硬件開關,但通常在軟件中使用按鈕控件實現。如果在軟件中實現,該設置必須保存在非易失性存儲中。

有條件的狀態轉換

在控件狀態模型中,轉換#1#2#4#7是有條件狀態轉換。設備應用程序必須提供一種方法來配置要轉換到哪種狀態。設備常量可以用於該配置。

條件轉換#1#2決定了啟動期間控制狀態模型的初始狀態。控制這些轉換的配置可以設置為以下狀態之一:

  • 在線
  • 設備離線
  • 嘗試在線
  • 主機離線

條件轉換#4用於決定設備嘗試在線失敗后要轉換到哪個狀態。該配置可以設置為以下狀態之一:

  • 設備離線
  • 主機離線

條件轉換#7用於確定當控件狀態變為在線時,應該進入哪個在線子狀態(本地或遠程)。該配置可以設置為以下在線子狀態之一:

  • 當地的
  • 遠程

控制狀態功能用會用到的消息

消息編號

方向

描述

S1F1

主機 <- 設備

當設備嘗試在線時(處於“嘗試在現在”狀態),此消息被發送到主機。主機通過發送S1F2應答消息授予權限。主機可以通過發送S1F0或允許消息事務超時來拒絕權限。

S1F15

主機 -> 設備

主機發送此消息請求從“主機離線”到在線的轉換(轉換#11)。

S1F17

主機 -> 設備

主機發送此消息請求從在線到“主機離線”的轉換(轉換#10)。

 

第十四章總結

顯然,GEM標准是最適合工廠自動化各個方面的行業標准,具有廣泛的特性,支持智能制造和工業4.0GEM標准可以在最簡單和最復雜的設備上實現。GEM將繼續在未來許多行業的制造業中發揮關鍵作用。

 

 
 
版權聲明:本文為博主原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接和本聲明。
本文鏈接: https://blog.csdn.net/u014211527/article/details/103251425


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM