專利名稱:用于操作自動化系統(tǒng)的方法和系統(tǒng)的制作方法
用于操作自動化系統(tǒng)的方法和系統(tǒng)
背景技術(shù):
本發(fā)明主要涉及自動化系統(tǒng),并且更具體地說,涉及用于操作自動化系統(tǒng)的方法和系統(tǒng)。至少一些已知的自動化制造工藝執(zhí)行某個過程以在工藝結(jié)束時安全地關(guān)閉與工 藝相關(guān)聯(lián)的制造資源。例如,如果工藝利用生產(chǎn)線以用于生產(chǎn)運行,則工藝必須在完成時釋 放該生產(chǎn)線。通常,無論該工藝是否正常完成、遇到異常還是被管理員取消,此過程均將運 行。此外,如果正在運行制造工藝的服務器停止,則工藝必須在重新啟動時還原以繼 續(xù)執(zhí)行該工藝。理想的情況是工藝還原到已知狀態(tài)。通常,在還原工藝時,運行某個過程以 初始化與該工藝相關(guān)聯(lián)的制造資源。此外,工藝的一些步驟有時將需要再次執(zhí)行。發(fā)生這 種情況一般是因為產(chǎn)品的返工是必需的。在此類情況下,跳躍到前面的子工藝步驟將是有 益的。類似地,有時由于步驟無需執(zhí)行或不能執(zhí)行而跳過工藝步驟。在這些情形的任一個 中,可運行過程以清除當前步驟的可能的部分執(zhí)行。另外,一些工藝連續(xù)執(zhí)行,使得在前面 的工藝完成后立即啟動工藝。相應地,在每次工藝執(zhí)行時分配資源可能是昂貴的。目前,在 連續(xù)的工藝停止時執(zhí)行釋放資源的過程之前,沒有分配這些資源的過程。
發(fā)明內(nèi)容
在一方面中,提供一種用于操作由執(zhí)行模型定義的自動化工藝的方法。自動化工 藝包括多個子工藝。該方法包括在多個子工藝的第一子工藝期間檢測到事件,并且通過操 作寫入執(zhí)行模型中的卸載過程,重置第一子工藝。該方法還包括操作預工藝和預子工藝過 程中的至少一個,以有利于在自動化工藝的預定步驟繼續(xù)自動化工藝。將預工藝和預子工 藝過程寫入執(zhí)行模型中。在另一方面中,提供一種包括自動化設備和配置成操作自動化設備的處理器的自 動化系統(tǒng)。處理器通過操作由執(zhí)行模型定義的自動化工藝來操作自動化設備。自動化工藝 包括多個子工藝。處理器還配置成在多個子工藝的第一子工藝期間檢測到事件,并且通過 操作寫入執(zhí)行模型中的卸載過程,重置第一子工藝。處理器還配置成操作預工藝和預子工 藝過程中的至少一個,以有利于在自動化工藝的預定步驟繼續(xù)自動化工藝。將預工藝和預 子工藝過程寫入執(zhí)行模型中。在仍有的另一方面中,提供一種包含在計算機可讀媒體上的計算機程序。該計算 機程序包括至少一個代碼段,所述至少一個代碼段配置成指示計算機操作按照執(zhí)行模型的 自動化工藝。自動化工藝包括多個子工藝。還指示計算機在多個子工藝的第一子工藝期間 檢測到事件,并且通過操作寫入執(zhí)行模型中的卸載過程,重置第一子工藝。還指示計算機操 作預工藝和預子工藝過程中的至少一個,以有利于在自動化工藝的預定步驟繼續(xù)自動化工 藝。將預工藝和預子工藝過程寫入執(zhí)行模型中。
圖1是自動化系統(tǒng)的示意示圖。圖2是可用于操作圖1中所示的自動化系統(tǒng)的方法的流程圖。
具體實施例方式本發(fā)明的技術(shù)效果包括提供一種形式化的制造工藝定義模型,該模型由工藝設計 軟件來實施,并由工藝執(zhí)行引擎用于操作自動化系統(tǒng)。模型的結(jié)構(gòu)簡化了工藝設計問題,包括 但不限于初始化/關(guān)閉、工藝復原、工藝步驟的返工/取消、和/或工藝之間邏輯的再使用。當在本文中描述時,工藝包括稱為子工藝的高級別步驟的集合。這些子工藝的每 個由定義子工藝的行為的更低級別的活動來組成。工藝可包含使用活動的相同集合來定義 的、但在工藝的執(zhí)行中的各個步驟調(diào)用的事件過程。在示范實施例中,子工藝由多個工藝定 義來再使用。另外,定義工藝模板以允許事件過程的集合由多個工藝定義來再使用。雖然本發(fā)明是相對于操作自動化系統(tǒng)進行描述,但如本領(lǐng)域的技術(shù)人員將認識到 的,本發(fā)明也可應用于操作任何合適的系統(tǒng)和/或設備。此外,雖然本發(fā)明是相對于處理器 和計算機程序進行描述的,但正如本領(lǐng)域的技術(shù)人員將認識到的,本發(fā)明也可應用到能夠 轉(zhuǎn)變軟件環(huán)境的任何系統(tǒng)和/或程序。例如,當在本文中使用時,術(shù)語“處理器”不限于只是 本領(lǐng)域中稱為處理器的那些集成電路,而是廣泛地指計算機、處理器、微控制器、微計算機、 可編程邏輯控制器、專用集成電路及其它可編程電路。處理器可以是計算機的部分,而計算 機可包括例如軟盤驅(qū)動器或壓縮光盤只讀存儲器(CD-ROM)驅(qū)動器的裝置,以用于從例如 軟盤、CD-ROM、磁光盤(MOD)或數(shù)字多功能光盤(DVD)的計算機可讀媒體讀取數(shù)據(jù)。圖1是自動化系統(tǒng)100的示意示圖。自動化系統(tǒng)100包括處理器102和多個自動 化設備104。在一個實施例中,處理器102通過計算機來利用和/或操作軟件以控制自動化 設備104。在一備選實施例中,處理器102使用使得自動化設備104能夠如本文所述地操作 的任何方法和/或系統(tǒng)來操作自動化設備104。此外,在示范實施例中,處理器102電耦合 到每件自動化設備104。在一備選實施例中,處理器102無線地與自動化設備104通信和/ 或使用自動化系統(tǒng)的領(lǐng)域中已知的任何合適方法與自動化設備104通信。自動化設備104配置成執(zhí)行至少一個制造工藝。例如,在一個實施例中,每件自動 化設備104大致同時工作以執(zhí)行單個制造工藝。在一備選實施例中,制造工藝包括多個子 工藝。相應地,在一個實施例中,每件自動化設備104執(zhí)行工藝的單獨子工藝。在一備選實 施例中,一個或多個子工藝由各件自動化設備104的組合來執(zhí)行。本發(fā)明提供可用于操作自動化系統(tǒng)100的一種工藝執(zhí)行模型。在示范實施例中, 該模型指定每個工藝由子工藝的序列組成,并且每個子工藝包含定義子工藝的執(zhí)行行為的 低級別活動的集合。在示范實施例中,子工藝能由系統(tǒng)中的多個工藝定義再使用。此外,工 藝能指明為連續(xù)的,使得工藝在每次它完成執(zhí)行時重新啟動。另外,在示范實施例中,定義了用于在工藝的生命周期期間執(zhí)行的事件過程的邏 輯。例如,此類事件過程可包括但不限于加載、預工藝、預子工藝、后子工藝、后工藝和/或 卸載。在示范實施例中,在工藝最初運行時和在執(zhí)行任何其它過程和/或子工藝前調(diào)用加 載過程。一般情況下,加載過程只運行一次,甚至對于連續(xù)工藝也是如此。此外,在示范實 施例中,在每個工藝環(huán)(process loop)的開始時調(diào)用預工藝過程。通常,非連續(xù)工藝將只執(zhí)行此過程一次。相反,連續(xù)工藝在每次工藝重新啟動時執(zhí)行此過程。在示范實施例中,在 工藝中的每個子工藝步驟之前調(diào)用預子工藝過程,在工藝中的每個子工藝步驟之后調(diào)用后 子工藝過程,以及在執(zhí)行所有子工藝和相關(guān)聯(lián)的預/后子工藝過程后調(diào)用后工藝過程。非 連續(xù)的工藝將只執(zhí)行后工藝過程一次,但連續(xù)工藝在每個工藝環(huán)的結(jié)束時執(zhí)行該過程。另 夕卜,在示范實施例中,在所有過程和子工藝已執(zhí)行后,當工藝終止時調(diào)用卸載過程。卸載過 程只運行一次,甚至對于連續(xù)工藝也是如此。當在子工藝期間發(fā)生未經(jīng)處理過的異常時,已知工藝執(zhí)行模型終止整個工藝。然而,在示范實施例中,工藝執(zhí)行模型繼續(xù)執(zhí)行后子工藝、后工藝和卸載事件過程。此外,如果 在工藝期間手動關(guān)閉自動化機器,也執(zhí)行這些過程。相應地,使得工藝設計者能夠?qū)懭胗糜?任何意外的終止工藝的清除邏輯。工藝的狀態(tài)在每個子工藝的開始時確定。如果自動化機器意外關(guān)閉,則工藝能從 前面執(zhí)行的子工藝的開始處恢復。從清晰的點恢復工藝為工藝設計者提供了受控的環(huán)境。 因此,工藝設計者無需考慮工藝在工藝和/或子工藝期間的隨機點恢復。此外,在工藝恢復 時,執(zhí)行加載、預工藝和預子工藝過程以允許工藝設計者重新初始化可能不再處于預期狀 態(tài)中的任何資源。工藝執(zhí)行模型還允許操作員在工藝中的子工藝之間跳躍。當跳躍操作發(fā)生時,工 藝引擎中止當前子工藝的執(zhí)行,并運行后子工藝過程,好像該子工藝已取消,由此允許任何 必需的清除。隨后,預子工藝過程為目標子工藝運行以允許在轉(zhuǎn)換到新狀態(tài)之前可能要求 的初始化。最后,執(zhí)行目標子工藝,使得工藝從該點正常繼續(xù)。在示范實施例中,操作員只 能跳躍到子工藝的啟動處,由此降低跳躍操作的復雜性。在一備選實施例中,操作員能跳躍 到工藝和/或子工藝的任何部分。在一個實施例中,提供工藝模板以定義在多個工藝中使用的工藝事件過程的集 合。工藝模板不包含任何子工藝。相反,它只包含工藝事件的邏輯。在創(chuàng)建工藝時,為該工 藝指派工藝模板,使得不要求工藝設計者寫入用于從模板繼承的工藝事件的邏輯。在示范 實施例中,對工藝模板的更改自動反映在使用模板的所有工藝中。圖2是可用于操作自動化系統(tǒng)100的方法200的流程圖。方法200包括開始(202) 包括多個子工藝的工藝。在示范實施例中,工藝是自動化工藝,其包括多個自動化子工藝。 在示范實施例中,工藝以加載過程和預工藝過程開始,并且每個子工藝以預子工藝過程開 始。方法200還包括在多個子工藝之一期間檢測到(204)事件,并重置(206)在其期 間發(fā)生事件的子工藝。在示范實施例中,事件是工藝中的錯誤和/或工藝的停止。當重置 (206)子工藝時,運行后子工藝過程、后工藝過程和卸載過程以使子工藝和工藝返回到開 始位置。在一個實施例中,在工藝的開始處(208)、在其期間發(fā)生事件的子工藝的開始處 (210)、在其期間發(fā)生事件的時刻(212)、在不同于在其期間發(fā)生事件的子工藝的第二子工 藝處(214)重置(206)工藝,或者跳過(216)多個子工藝中的至少一個,并且在跳過的子工 藝后發(fā)生的第二子工藝處(218)重置(206)工藝。方法200還包括完成工藝(220)和重新啟動每個子工藝(222)。在示范實施例中, 運行后子工藝過程、后工藝過程和卸載過程以重新啟動每個子工藝。相應地,示范實施例使得工藝設計者能夠在用于工藝定義的剩余部分的相同圖形環(huán)境中創(chuàng)作初始化和關(guān)閉過程。因此,工藝內(nèi)在地支持向后和/或向前跳躍以允許生產(chǎn)中更多的靈活性,并且共同的工藝過程可在組織各處再使用。此外,本發(fā)明使得工藝設計者能夠定義意外系統(tǒng)關(guān)閉的事件中工藝的復原行為。 相應地,對工藝模板的更改自動復制到從模板派生的所有工藝。在示范實施例中,在子工藝 的啟動處而不是在每個活動后保存工作流程狀態(tài),這有利于改進工藝引擎性能。本文所述的工藝事件未構(gòu)建于已知工作流程產(chǎn)品的工藝引擎中,并且因此,事件 不受已知工作流程產(chǎn)品的支持。在這些已知系統(tǒng)中,事件過程不能在異常發(fā)生時運行,例 如,當工藝被重新加載和/或在步驟之間跳躍時。相應地,過程從一個工藝復制到另一工 藝,由此導致維護工藝中的問題。在一些已知系統(tǒng)中,工藝引擎自動地處理初始化和關(guān)閉, 而不要求用戶寫入任何工藝邏輯。然而,由于制造環(huán)境的復雜性,提供本文所述的功能性是 困難的和/或有限制的。在一個實施例中,提供一種用于操作由執(zhí)行模型定義的自動化工藝的方法。自動 化工藝包括多個子工藝。該方法包括在多個子工藝的第一子工藝期間檢測到事件,并且通 過操作寫入執(zhí)行模型中的卸載過程,重置第一子工藝。該方法還包括操作預工藝和預子工 藝過程中的至少一個,以有利于在自動化工藝的預定步驟繼續(xù)自動化工藝。將預工藝和預 子工藝過程寫入執(zhí)行模型中。在一個實施例中,在自動化工藝的開始處、在第一子工藝的開始處、在其期間發(fā)生 事件的工藝的步驟處、在第二子工藝重新啟動自動化工藝。在另一個實施例中,該方法包 括在多個連續(xù)子工藝之一期間檢測到事件,跳過至少一個隨后的子工藝,以及在連續(xù)子工 藝的第二子工藝重新啟動自動化工藝,其中第二子工藝在所述至少一個跳過的子工藝后發(fā) 生。在一個實施例中,該方法還包括使用工藝模板來定義執(zhí)行模型和使用工藝模板的要素 來定義每個子工藝。相應地,上述系統(tǒng)和方法有利于提供一種形式化的制造工藝定義模型,該模型由 工藝設計軟件來實施,并由工藝執(zhí)行引擎用于操作自動化系統(tǒng)。模型的結(jié)構(gòu)簡化了工藝設 計問題,包括但不限于初始化/關(guān)閉、工藝復原、工藝步驟的返工/取消、和/或工藝之間邏 輯的再使用。當在本文中使用時,以單數(shù)形式記載的并且前面帶有詞語“一”或“一個”的要素 或步驟應理解為不排除多個所述要素或步驟,除非明確記載此類排除。此外,本發(fā)明對“一 個實施例”的引用并非旨在解釋為排除也結(jié)合所記載的特征的另外實施例的存在。上面詳細描述了用于操作自動化系統(tǒng)的系統(tǒng)和方法的示范實施例。所示系統(tǒng)和方 法不限于本文描述的特定實施例,相反,系統(tǒng)的組件可與本文描述的其它組件獨立且分開 地來利用。此外,方法中描述的步驟可與本文描述的其它步驟獨立且分開地來利用。雖然本發(fā)明已根據(jù)各種特定實施例進行了描述,但本領(lǐng)域的技術(shù)人員將認識到, 本發(fā)明能以權(quán)利要求的精神和范圍內(nèi)的修改來實踐。
權(quán)利要求
一種用于操作由執(zhí)行模型定義的自動化工藝的方法,其中所述自動化工藝包括多個子工藝,所述方法包括在所述多個子工藝的第一子工藝期間檢測到事件;通過操作寫入所述執(zhí)行模型中的卸載過程,重置所述第一子工藝;操作預工藝和預子工藝過程中的至少一個,以有利于在所述自動化工藝的預定步驟繼續(xù)所述自動化工藝,其中將所述預工藝和所述預子工藝過程寫入所述執(zhí)行模型中。
2.如權(quán)利要求1所述的方法,其中在所述工藝的預定步驟繼續(xù)所述自動化工藝進一步 包括在所述自動化工藝的開始處重新啟動所述自動化工藝。
3.如權(quán)利要求1所述的方法,其中在所述自動化工藝的預定步驟繼續(xù)所述自動化工藝 進一步包括在所述第一子工藝的開始處重新啟動所述自動化工藝。
4.如權(quán)利要求1所述的方法,其中在所述自動化工藝的預定步驟繼續(xù)所述自動化工藝 進一步包括在其期間發(fā)生所述事件的工藝的步驟處重新啟動所述自動化工藝。
5.如權(quán)利要求1所述的方法,其中在所述自動化工藝的預定步驟繼續(xù)所述自動化工藝 進一步包括在所述多個子工藝的第二子工藝重新啟動所述自動化工藝。
6.如權(quán)利要求1所述的方法,其中在第一子工藝期間檢測到所述事件進一步包括在多個連續(xù)子工藝之一期間檢測到所 述事件;以及在所述自動化工藝的預定步驟繼續(xù)所述自動化工藝進一步包括跳過至少一個隨后的 子工藝并在所述連續(xù)子工藝的第二子工藝重新啟動所述自動化工藝,其中所述第二子工藝 在所述至少一個跳過的子工藝后發(fā)生。
7.如權(quán)利要求1所述的方法,進一步包括 使用工藝模板來定義所述執(zhí)行模型;以及 使用所述工藝模板的要素來定義每個子工藝。
8.一種自動化系統(tǒng),包括 自動化設備;以及處理器,配置成通過以下方式來操作所述自動化設備 操作由執(zhí)行模型定義的自動化工藝,其中所述自動化工藝包括多個子工藝; 在所述多個子工藝的第一子工藝期間檢測到事件; 通過操作寫入所述執(zhí)行模型中的卸載過程,重置所述第一子工藝; 操作預工藝和預子工藝過程中的至少一個,以有利于在所述自動化工藝的預定步驟繼 續(xù)所述自動化工藝,其中將所述預工藝和所述預子工藝過程寫入所述執(zhí)行模型中。
9.如權(quán)利要求8所述的自動化系統(tǒng),其中所述處理器進一步配置成在所述自動化工藝 的開始處重新啟動所述自動化工藝。
10.如權(quán)利要求8所述的自動化系統(tǒng),其中所述處理器進一步配置成在所述第一子工 藝的開始處重新啟動所述自動化工藝。
11.如權(quán)利要求8所述的自動化系統(tǒng),其中所述處理器進一步配置成在其期間發(fā)生所 述事件的工藝的步驟處重新啟動所述自動化工藝。
12.如權(quán)利要求8所述的自動化系統(tǒng),其中所述處理器進一步配置成在所述多個子工 藝的第二子工藝重新啟動所述自動化工藝。
13.如權(quán)利要求8所述的自動化系統(tǒng),其中所述處理器進一步配置成在多個連續(xù)子工藝之一期間檢測到所述事件;跳過至少一個隨后的子工藝;以及在所述連續(xù)子工藝的第二子工藝重新啟動所述自動化工藝,其中所述第二子工藝在所 述至少一個跳過的子工藝后發(fā)生。
14.如權(quán)利要求8所述的自動化系統(tǒng),其中所述處理器進一步配置成使用工藝模板來定義所述執(zhí)行模型;以及使用所述工藝模板的要素來定義每個子工藝。
15.一種包含在計算機可讀媒體上的計算機程序,所述計算機程序包括至少一個代碼 段,所述至少一個代碼段配置成指示計算機操作由執(zhí)行模型定義的自動化工藝,其中所述自動化工藝包括多個子工藝;在所述多個子工藝的第一子工藝期間檢測到事件;通過操作寫入所述執(zhí)行模型中的卸載過程,重置所述第一子工藝;操作預工藝和預子工藝過程中的至少一個,以有利于在所述自動化工藝的預定步驟繼 續(xù)所述自動化工藝,其中將所述預工藝和所述預子工藝過程寫入所述執(zhí)行模型中。
16.如權(quán)利要求15所述的計算機程序,其中所述計算機程序包括配置成在所述自動化 工藝的開始處重新啟動所述自動化工藝的至少一個代碼段。
17.如權(quán)利要求15所述的計算機程序,其中所述計算機程序包括配置成在所述第一子 工藝的開始處重新啟動所述自動化工藝的至少一個代碼段。
18.如權(quán)利要求15所述的計算機程序,其中所述計算機程序包括配置成在其期間發(fā)生 所述事件的工藝的步驟處重新啟動所述自動化工藝的至少一個代碼段。
19.如權(quán)利要求15所述的計算機程序,其中所述計算機程序包括配置成在所述多個子 工藝的第二子工藝重新啟動所述自動化工藝的至少一個代碼段。
20.如權(quán)利要求15所述的計算機程序,其中所述計算機程序包括至少一個代碼段,所 述至少一個代碼段配置成在多個連續(xù)子工藝之一期間檢測到所述事件;跳過至少一個隨后的子工藝;以及在所述連續(xù)子工藝的第二子工藝重新啟動所述自動化工藝,其中所述第二子工藝在所 述至少一個跳過的子工藝后發(fā)生。
全文摘要
提供一種用于操作由執(zhí)行模型定義的自動化工藝的方法。自動化工藝包括多個子工藝。該方法包括在多個子工藝的第一子工藝期間檢測到(204)事件,并且通過操作寫入執(zhí)行模型中的卸載過程,重置(206)第一子工藝。該方法還包括操作預工藝和預子工藝過程中的至少一個,以有利于在自動化工藝的預定步驟繼續(xù)自動化工藝。將預工藝和預子工藝過程寫入執(zhí)行模型中。
文檔編號G05B19/4067GK101849214SQ200880113416
公開日2010年9月29日 申請日期2008年8月13日 優(yōu)先權(quán)日2007年10月19日
發(fā)明者D·德貝內(nèi)德托, G·米林格爾, J·加古斯, R·貝里 申請人:通用電氣智能平臺有限公司