專利名稱:用于可擴充自動化系統(tǒng)工程平臺的hmi框架的制作方法
用于可擴充自動化系統(tǒng)工程平臺的HMI框架相關(guān)申請本申請涉及于2006年6月29日提交的客戶編號為06AB126的題為 "AUTOMATION HMI VISUALIZATION UTILIZING GUI FUNCTION BLOCK"的共同待批且共同轉(zhuǎn)讓的美國申請,其所分配的序列號為No._,并且該申請合并在此作為參考。
背景技術(shù):
人機接口 (HMI)或簡稱為用戶界面對于自動化設(shè)備的成功操作和維護是重 要的。用戶界面提供了操作人員和機器之間的必需的通信鏈路。該鏈路允許操作人 員設(shè)置設(shè)備、在操作期間監(jiān)視設(shè)備狀態(tài)以及分析設(shè)備健康狀況等等。如果沒有這些 用戶界面,高級自動化的實現(xiàn)即使不是不可能也是困難的,尤其是對于具有分散位 置的分布式自動化系統(tǒng)而言。近年來,用戶界面經(jīng)歷了若干變化。首先,用戶界面是簡單的啞終端(dumb terminal),它僅僅向最終用戶顯示由與自動化設(shè)備相關(guān)聯(lián)的服務(wù)器或處理器執(zhí)行 的某些過程的文本消息。例如,故障設(shè)備將生成表示確定的差錯的內(nèi)部差錯碼,該 差錯碼然后與特定的差錯消息進行匹配并在顯示設(shè)備上顯示給用戶或操作人員。隨 著時間的推移,開發(fā)了客戶機方處理以允許從基于文本的界面移至圖形用戶界面 (GUI)。這一轉(zhuǎn)變將某些處理負(fù)擔(dān)從自動化設(shè)備或相關(guān)聯(lián)的處理器轉(zhuǎn)移到客戶機 方GUI。這些新GUI顯著提高了用戶快速且容易地訪問信息的能力?,F(xiàn)代的自動化典型地由通常相當(dāng)復(fù)雜的分布式系統(tǒng)組成。這對必須改變生產(chǎn) 過程以滿足不斷變化的制造方針的系統(tǒng)工程師憑添了額外的負(fù)擔(dān)。己引入了在自動 化控制設(shè)計中允許部分模塊化的可擴充工程平臺。它們包括提供用于構(gòu)建定制的自 動化過程設(shè)計的基礎(chǔ)的接口或API (應(yīng)用程序編程接口)。然而,這些平臺內(nèi)固有 的用戶界面需要大量努力來建立,并且通常要求過程設(shè)計人員熟練掌握各種編程語 言。于是,構(gòu)造用于自動化系統(tǒng)的GUI的過程是冗長且極其耗時的,并且通常需 要大量的新代碼來完成這一界面。200710129039.3說明書第2/13頁發(fā)明內(nèi)容以下提出了對本發(fā)明的簡化概述以提供對本發(fā)明各實施例的某些方面的基本 理解。這一概述不是本發(fā)明的廣泛綜述。它并不旨在標(biāo)識各實施例的關(guān)鍵/決定性 要素,也不旨在描繪本發(fā)明的范圍。其唯一目的是以簡化形式提出本發(fā)明的某些概 念作為以后提出的更詳細(xì)描述的序言。本發(fā)明一般涉及自動化系統(tǒng),尤其涉及在可擴充工程平臺上構(gòu)建的人機接口(HMI) 。 GUI框架充分利用可擴充工程平臺的接口來提供能夠方便地構(gòu)造HMI 的工具。該GUI框架能夠?qū)氍F(xiàn)有的GUI組件和/或創(chuàng)建新的GUI組件。該GUI 框架還可以組合各基礎(chǔ)GUI組件以創(chuàng)建復(fù)雜的合成GUI組件??衫脤?dǎo)入機制通 過將現(xiàn)有的GUI組件封入與工程平臺兼容的公用可重復(fù)使用軟件代碼來導(dǎo)入這些 現(xiàn)有的GUI組件。這便于避免重寫為其他自動化設(shè)計系統(tǒng)創(chuàng)建的現(xiàn)有GUI組件。 該GUI框架利用功能塊來表示GUI組件并在需要時自動生成帶鏈接的GUI功能塊 網(wǎng)絡(luò)。這允許用最少的用戶精力來創(chuàng)建復(fù)雜的GUI。使用仿真,用戶還能夠在所設(shè) 計的GUI鏈接至自動化控制功能塊之前評審該GUI。該GUI框架充分減少了產(chǎn)生 用于自動化系統(tǒng)的HMI所需的時間和精力。通過使用可擴充工程平臺,還能夠充 分減少實現(xiàn)GUI設(shè)計軟件和學(xué)習(xí)曲線所需的代碼量。為實現(xiàn)上述和相關(guān)目的,此處結(jié)合以下描述和附圖描述了各實施例的某些說 明性方面。然而,這些方面僅指示其中可采用本發(fā)明的原理的各種方式中的幾種, 并且本發(fā)明旨在包括所有這些方面及其等效方面。當(dāng)結(jié)合附圖考慮以下詳細(xì)描述 時,本發(fā)明的其它優(yōu)點和新穎特征將變得顯而易見。
圖1是根據(jù)一個實施例的一方面的HMI開發(fā)系統(tǒng)的框圖。 圖2是根據(jù)一個實施例的一方面的HMI開發(fā)系統(tǒng)的另一框圖。 圖3是根據(jù)一個實施例的一方面的HMI開發(fā)系統(tǒng)的又一框圖。 圖4是根據(jù)一個實施例的一方面在可擴充工程環(huán)境內(nèi)操作的HMI開發(fā)組件的 框圖。圖5是根據(jù)一個實施例的一方面的HMI開發(fā)組件及典型處理流程的圖示。 圖6是根據(jù)一個實施例的一方面的自動化系統(tǒng)的框圖。
圖7是根據(jù)一個實施例的一方面的自動化系統(tǒng)的另一個框圖。圖8是根據(jù)一個實施例的一方面的便于HMI開發(fā)的方法的流程圖。 圖9是根據(jù)一個實施例的一方面的導(dǎo)入用于HMI開發(fā)的GUI組件的方法的流 程圖。圖10是根據(jù)一個實施例的一方面的導(dǎo)入用于HMI開發(fā)的GUI組件的處理流程。圖11示出了一個實施例可在其中運作的示例操作環(huán)境。圖12示出了一個實施例可在其中運作的另一示例操作環(huán)境。
具體實施方式
現(xiàn)在將參考附圖描述本發(fā)明,所有附圖中相同的參考標(biāo)號用于指相同的元素。 在以下描述中,為解釋起見,陳述了眾多具體細(xì)節(jié)以提供對本發(fā)明的全面理解。然 而,很明顯,本發(fā)明的各實施例可以在沒有這些具體細(xì)節(jié)的情況下實施。在其它情 況下,以框圖形式示出公知的結(jié)構(gòu)和設(shè)備以便描述各實施例。如本申請中使用的,術(shù)語"組件"指的是計算機相關(guān)實體,它可以是硬件、 硬件和軟件的組合、軟件或執(zhí)行中的軟件。例如,組件可以是,但不限于,運行在 處理器上的進程、處理器、對象、可執(zhí)行碼、執(zhí)行線程、程序和/或計算機。作為 說明,運行在服務(wù)器上的應(yīng)用程序和服務(wù)器都可以是計算機組件。 一個或多個組件 可駐留在一個進程和/或執(zhí)行線程內(nèi),且組件可位于一臺計算機上和/或分布在兩臺 或更多計算機之間。此外,本發(fā)明可使用產(chǎn)生軟件、固件、硬件或其任何組合的標(biāo)準(zhǔn)編程和/或工 程技術(shù)而被實現(xiàn)為方法、裝置或制品。如此處所使用的術(shù)語"制品"(或者替換地 稱為"計算機程序產(chǎn)品")旨在包含可從任何計算機可讀設(shè)備、載體或介質(zhì)訪問的 計算機程序。當(dāng)然,本領(lǐng)域的技術(shù)人員將認(rèn)識到,可對這一配置作出許多修改而不 脫離本發(fā)明的范圍或精神。為了跟上不斷變化的市場,工業(yè)公司頻繁改變它們的生產(chǎn)過程。因此,為了 生產(chǎn)出創(chuàng)新的產(chǎn)品,自動化系統(tǒng)設(shè)計人員必須能夠以更快的步伐提供過程控制并監(jiān) 視各種修改。在此提供的HMI開發(fā)系統(tǒng)的實施例協(xié)助自動化系統(tǒng)設(shè)計人員構(gòu)造用 于控制和/或監(jiān)視自動化活動和系統(tǒng)的用戶圖形界面(GUI)?,F(xiàn)有方法頗為繁復(fù) 并且需要軟件代碼的大量重寫以構(gòu)建GUI。與之形成鮮明對比的是,在此公開的各
個實例允許系統(tǒng)設(shè)計人員快速且方便地構(gòu)造用于過程控制/監(jiān)視的簡單和/或復(fù)雜 用戶界面。各個實例利用可擴充工程平臺來提供隨后可應(yīng)用于GUI開發(fā)的通用應(yīng)用程序?,F(xiàn)有GUI組件還可以被方便地導(dǎo)入,甚至可用于構(gòu)造附加的、更為復(fù)雜 的GUI。這些GUI組件本身用有助于在利用這些實例時降低學(xué)習(xí)曲線的功能塊來 表示。還能夠自動生成表示多個GUI組件的功能塊網(wǎng)絡(luò)以協(xié)助系統(tǒng)設(shè)計人員。在圖1中,示出了根據(jù)一個實施例的一方面的HMI開發(fā)系統(tǒng)100的框圖。HMI 開發(fā)系統(tǒng)100包含接收GUI組件104并且提供GUI組件功能塊106的HMI開發(fā)組 件102。HMI開發(fā)組件102還直接和/或間接與用戶界面108接口以便于HMI開發(fā)。 功能塊是工業(yè)系統(tǒng)中良好規(guī)定的概念。功能塊通常被描述為帶有定義接口的軟件的 功能單元。本質(zhì)上,功能塊是以類似于電子電路的方式處理封裝行為的軟件模塊。 用戶能夠容易地理解功能塊的功能而無需專門的軟件技術(shù)。還能夠組合各功能塊以 形成更為復(fù)雜的合成功能塊,同時像單個功能塊一樣維持簡單化的接口。HMI開發(fā)系統(tǒng)100將GUI組件104變換成GUI組件功能塊106。GUI組件104 能夠包括但不限于諸如按鈕、滑塊、箱(tank)和/或其他圖形等在HMI內(nèi)利用的 GUI元素。GUI組件功能塊106表示單個GUI組件功能塊和/或合成的GUI組件功 能塊等。HMI開發(fā)組件102與用戶界面108交互以允許用戶在需要時對GUI的開 發(fā)。例如,用戶能夠通過選擇從GUI組件104創(chuàng)建的期望的GUI組件功能塊來容 易地設(shè)計新的HMI,并且HMI開發(fā)組件102隨后能夠自動地將獨立和/或合成的 GUI組件功能塊鏈接到期望的GUI組件功能塊或功能塊網(wǎng)絡(luò)。通過充分利用功能 塊,HMI開發(fā)系統(tǒng)100的各實例充分減少了控制軟件的數(shù)量、充分改善了控制系 統(tǒng)的質(zhì)量、提供了更一致的模塊行為、并且充分縮短了用于控制系統(tǒng)的開發(fā)時間。 此外,因為HMI開發(fā)組件102還能夠用于導(dǎo)入現(xiàn)有的GUI組件,所以該102能夠 與來自其他GUI開發(fā)程序的GUI組件兼容。這允許HMI開發(fā)系統(tǒng)100利用預(yù)先存 在的GUI組件而無需大量代碼重寫,從而大幅降低了實現(xiàn)成本。HMI開發(fā)系統(tǒng)100通常由工程支持系統(tǒng)(ESS)或工程平臺利用。工程平臺 允許系統(tǒng)設(shè)計人員構(gòu)造分布式測量和控制系統(tǒng)。通過讓工程平臺在整個開發(fā)過程中 符合公用標(biāo)準(zhǔn),能夠確保與各獨立過程的兼容性。IEC建立諸如IEC 61499標(biāo)準(zhǔn)等 工業(yè)標(biāo)準(zhǔn),以便于建立工業(yè)范圍的一致性。IEC 61499標(biāo)準(zhǔn)是基于功能塊的標(biāo)準(zhǔn)化 體系結(jié)構(gòu)的一個示例,并且與HMI開發(fā)系統(tǒng)100的實例相兼容。HMI開發(fā)系統(tǒng)100利用諸如IEC 61499兼容的工程平臺等可擴充工程平臺,
以允許與其他開發(fā)工具的容易集成并提供對基本功能的訪問。這些基本功能可以包 括但不限于表示功能(用戶界面)、文件處理、調(diào)査、動作和/或信息處理(數(shù)據(jù) 處理)等。可擴充工程平臺通常提供允許添加定制的插件模塊以進一步增強其能力(例如,編輯、調(diào)試、GUI開發(fā)等)的應(yīng)用程序編程接口 (API)。這允許HMI 開發(fā)系統(tǒng)100的實例方便快捷地合并到可擴充工程平臺中。轉(zhuǎn)向圖2,描繪了根據(jù)一個實施例的一方面的HMI開發(fā)系統(tǒng)200的另一個框 圖。HMI開發(fā)系統(tǒng)200包含接收GUI組件204并提供GUI組件功能塊206的HMI 開發(fā)組件202。 HMI開發(fā)組件202含有GUI建模組件208和GUI開發(fā)組件210, GUI開發(fā)組件210與用戶界面212直接和/或間接接口 。GUI建模組件208接收GUI 組件204并按需自動生成GUI組件功能塊和功能塊網(wǎng)絡(luò)。GUI開發(fā)組件210接收GUI功能塊網(wǎng)絡(luò)并經(jīng)由用戶界面212提供交互式HMI 開發(fā)。例如,GUI組件204可包含從各種現(xiàn)有來源中獲得的GUI元素。GUI建模 組件208隨后為這些GUI組件204創(chuàng)建GUI功能塊和網(wǎng)絡(luò)。GUI開發(fā)組件210隨 后經(jīng)由用戶界面212向用戶提供對GUI功能塊網(wǎng)絡(luò)的訪問。GUI開發(fā)組件210以 可視WYSIWYG (所見即所得)方式向用戶呈現(xiàn)一基于GUI組件功能塊網(wǎng)絡(luò)的 HMI。用戶能夠?qū)@些GUI功能塊的各個方面進行選擇、組合、修改和/或刪除以 實現(xiàn)自動化過程所期望的GUI。在某些實例中,用戶例如能夠通過從選項板中拖拽 GUI組件并在由GUI開發(fā)組件210經(jīng)由用戶界面212提供的可視環(huán)境中對其進行 排列來開發(fā)HMI。這允許對設(shè)計的HMI進行可視化預(yù)覽。通過選擇適當(dāng)?shù)牟季?例 如,網(wǎng)格和流程布局),用戶能夠定義如何對GUI組件進行排列。GUI開發(fā)組件210隨后輸出期望的GUI元素作為GUI組件功能塊206。 GUI 組件功能塊206隨后能夠與控制/監(jiān)視器功能組合并能用于控制和/或監(jiān)視自動化過 程。確認(rèn)組件(未示出)還可連同GUI開發(fā)組件210—起使用和/或單獨用于模擬 過程參數(shù)以允許用戶基于GUI組件功能塊206來測試各種GUI。GUI開發(fā)組件210 還可以在開發(fā)過程期間(例如當(dāng)用戶在開發(fā)期間添加或刪除GUI組件時)利用GUI 建模組件208來重新共建新的功能塊網(wǎng)絡(luò)。GUI組件功能塊206可以包括但不限于 含有例如供在其他兼容工程工具內(nèi)使用的IEC 61499兼容的基礎(chǔ)與合成功能塊、設(shè) 備和/或資源和/或系統(tǒng)描述/配置的XML (可擴展標(biāo)記語言)編碼文件。參見圖3,示出了根據(jù)一個實施例的一方面的HMI開發(fā)系統(tǒng)300的又一個框 圖。HMI開發(fā)系統(tǒng)300包含接收GUI組件304并提供GUI組件功能塊306的HMI
開發(fā)組件302。 HMI開發(fā)組件302包含導(dǎo)入機制308、 GUI建模組件310、直接和/ 或間接與用戶界面322接口的GUI開發(fā)組件312、 GUI功能塊(FB)生成組件314、 合成GUI生成組件316以及提供描述320的描述組件318。 GUI組件304可以包 括功能塊兼容組件和/或未格式化以供可擴充工程平臺利用的其他組件等。GUI組 件304還可以包括但不限于基礎(chǔ)GUI組件、合成GUI組件和/或邏輯GUI組件等。 導(dǎo)入機制308接收GUI組件304并按照需要將其封裝/格式化以供在可擴充工程平 臺和/或其他系統(tǒng)內(nèi)利用。這通常由自含式可重復(fù)使用組件軟件來完成,諸如 SunMicrosystem的JavaTM與JavaBeansTM的各種變體等。在某些實例中,導(dǎo)入機制 308能夠自動解析GUI組件以提供所需格式的元素。GUI建模組件310能夠直接從導(dǎo)入機制308接收導(dǎo)入的GUI組件并在隨后利 用GUI功能塊(FB)生成組件314,和/或GUI功能塊(FB)生成組件314能夠接 收導(dǎo)入的GUI組件并且能夠在將它們發(fā)送到GUI建模組件310以供生成GUI功能 塊網(wǎng)絡(luò)之前將其變換成功能塊。GUI開發(fā)組件312經(jīng)由用戶界面322向用戶提供基 于GUI功能塊網(wǎng)絡(luò)的HMI的可視表示。用戶可以按需對這些GUI組件進行添加、 刪除和修改。GUI開發(fā)組件312隨后能夠基于用戶的選擇利用合成GUI生成組件 316來按需生成合成GUI。 GUI開發(fā)組件312隨后可以提供GUI組件功能塊306 以供在可擴充工程平臺內(nèi)的進一步使用。在某些實例中,邏輯GUI或設(shè)備、資源 和/或系統(tǒng)的描述由描述組件318基于由GUI開發(fā)組件312開發(fā)的HMI來生成,并 作為描述320輸出。在其它實例中,GUI組件功能塊306能夠表示HMI相關(guān)信息, 例如GUI和/或描述等。應(yīng)該理解,雖然各個組件被示為分開的元素,但是某些實 例能夠?qū)⒏鳘毩⒔M件的部分或所有功能結(jié)合到單個組件中。同樣,并非在每一個實 例中都需要所有的組件。例如,如果GUI組件304已經(jīng)以與可擴充工程平臺兼容 的格式封裝,則不需要導(dǎo)入機制308。類似地,GUI建模組件310也可以提供導(dǎo)入 機制308和/或GUI功能塊(FB)生成組件314等的功能。此外,GUI開發(fā)組件 312還能夠提供合成GUI生成組件316和/或描述組件318等的功能。參見圖4,示出了根據(jù)一個實施例的一方面的在可擴充工程環(huán)境400中操作的 HMI開發(fā)組件404的框圖??蓴U充工程環(huán)境400包括與HMI開發(fā)組件404接口的 可擴充工程平臺402??蓴U充工程平臺402包括組件"1-P" 410-414,其中"P"表 示從一到無窮大的整數(shù)。組件"1-P" 410-414表示在能夠與HMI開發(fā)組件404接 口的可擴充工程平臺402內(nèi)的各種應(yīng)用程序。接口通常通過應(yīng)用程序編程接口(API)來實現(xiàn)。組件"1-P" 410-414可以包括但不限于用于數(shù)據(jù)對象的API、節(jié) 點、cookie、文件系統(tǒng)、數(shù)據(jù)系統(tǒng)、動作和/或編輯器等。GUI開發(fā)組件406可以由HMI開發(fā)組件404經(jīng)由可擴充工程平臺402通過一 個或多個組件"1-P" 410-414直接和/或間接地接收。同樣地,諸如HMI相關(guān)信息 416等GUI組件相關(guān)信息也可以直接從HMI開發(fā)組件404獲得和/或經(jīng)由一個或多 個組件"1-P" 410-414獲得。通過與可擴充工程平臺402接口 , HMI開發(fā)組件404 能夠提供GUI開發(fā)能力而無需大量合并己經(jīng)由可擴充工程平臺402提供的應(yīng)用程 序。這節(jié)省了編程代碼并且還大幅降低了學(xué)習(xí)曲線。此外,HMI開發(fā)組件404還 可被構(gòu)造成用于可擴充工程平臺402的直接插件模塊。這允許HMI開發(fā)組件404 充分增強可擴充工程平臺在HMI開發(fā)中的能力同時所耗費的集成精力最小。轉(zhuǎn)向圖5,描繪了根據(jù)一個實施例的一方面的HMI開發(fā)組件504及其典型處 理流程的圖示500。處理輸入502并使其對HMI開發(fā)組件504可用。示出的對輸 入502的處理使用了一個利用將在以下討論并在圖10中示出的JavaBeanTM封裝的 示例性過程。用戶可以查看HMI開發(fā)組件504的可視表示并且通過以上討論的交 互式過程來構(gòu)建HMI。 HMI開發(fā)組件504隨后提供輸出506。輸出506能夠包括 但不限于設(shè)備、系統(tǒng)、和/或資源描述以及包括基礎(chǔ)GUI功能塊的合成GUI功能塊 等。上述系統(tǒng)用于為自動化系統(tǒng)創(chuàng)建控制和/或監(jiān)視系統(tǒng)。參見圖6,示出了根據(jù) 一個實施例的一方面的自動化系統(tǒng)600的框圖。自動化系統(tǒng)600包括一個或多個自 動化設(shè)備602 (自動化設(shè)備i到自動化設(shè)備w,其中N是從1到無窮大的整數(shù))、 數(shù)據(jù)存儲604和接口 606。自動化設(shè)備602可包括多種工業(yè)、商業(yè)和/或娛樂處理和 機器中的任一種,諸如可編程邏輯控制器(PLC)、提供流體傳輸和其它處理的泵、 風(fēng)扇、傳送系統(tǒng)、壓縮機、齒輪箱、運動控制和檢測設(shè)備、傳感器、螺旋泵和攪拌 機、以及由發(fā)動機驅(qū)動的液壓和氣動機器。這一發(fā)動機可以與諸如閥門、泵、熔爐、 加熱器、冷卻器、傳送滾筒、風(fēng)扇、壓縮機、齒輪箱等其它組件組合,以及與適當(dāng) 的電動驅(qū)動器組合以形成工業(yè)機器和致動器。例如,電動機可與向發(fā)動機提供可變 電能的電動驅(qū)動器組合以及與泵組合,由此發(fā)動機旋轉(zhuǎn)泵軸以形成可控制抽吸系 統(tǒng)。數(shù)據(jù)存儲604提供用于容納與自動化設(shè)備602相關(guān)的數(shù)據(jù)的存儲位置,這些 數(shù)據(jù)包括但不限于設(shè)備描述、位置、和機械條件、能量或燃料消耗、完整周期、馬
力、平均RPM、效率評級、以及來自傳感器的關(guān)于設(shè)備健康狀況和/或性能的數(shù)據(jù)。數(shù)據(jù)存儲604可以是集成或聯(lián)合的,并且可通過通信系統(tǒng)來鏈接。接口 606可用于 經(jīng)由線纜(例如,雙絞線、同軸電纜、光纖、以太網(wǎng)、USB (通用串行總線)、火 線)或無線地(例如,使用IEEE 802.1 la和/或正EE 802.lib標(biāo)準(zhǔn)、藍(lán)牙技術(shù)、衛(wèi) 星)將用戶與自動化設(shè)備602和/或數(shù)據(jù)存儲604的網(wǎng)絡(luò)連接。接口 606便于監(jiān)視、 提取、發(fā)送自動化設(shè)備602及其相關(guān)聯(lián)的數(shù)據(jù)并與其交互。如圖6所示,諸如設(shè)備操作人員等用戶可通過利用各種局域網(wǎng)(LAN)技術(shù) 的LAN來連接到數(shù)據(jù)存儲604和自動化設(shè)備602,這些技術(shù)包括光纖分布式數(shù)據(jù) 接口 (FDDI)、銅分布式數(shù)據(jù)接口 (CDDI)、以太網(wǎng)/IEEE 802.3、令牌環(huán)/IEEE 802.5、 諸如總線、樹、環(huán)和星等物理連接拓?fù)涞取H欢?,諸如自動化設(shè)備602、數(shù)據(jù)存儲 604和接口 606等聯(lián)網(wǎng)設(shè)備之間的通信無需限于本地連接到網(wǎng)絡(luò)的那些設(shè)備。本地 聯(lián)網(wǎng)設(shè)備也可與遠(yuǎn)程設(shè)備通信。轉(zhuǎn)向圖7,描述了根據(jù)一個實施例的一方面的自動化系統(tǒng)700的另一框圖。圖 7基本上與系統(tǒng)600相同,不同之處在于用戶采用接口 706來通過廣域網(wǎng)(WAN) 708遠(yuǎn)程地與自動化設(shè)備702和數(shù)據(jù)存儲704交互。WAN 708是可跨較大的地理 區(qū)域(例如,國家、世界)的通信網(wǎng)絡(luò),且一般由若干互連的局域網(wǎng)(LAN)和 城域網(wǎng)(MAN)構(gòu)成。當(dāng)今存在的最大的WAN708是因特網(wǎng)。WAN技術(shù)包括但 不限于,點對點鏈路、如綜合業(yè)務(wù)數(shù)字網(wǎng)(ISDN)及其變體的電路交換網(wǎng)絡(luò)、分 組交換網(wǎng)絡(luò)、Tl網(wǎng)絡(luò)和數(shù)字用戶線(DSL)。鑒于以上示出并描述的示例性系統(tǒng),參考圖8-9的流程圖可以更好地理解可根 據(jù)各實施例實現(xiàn)的方法。盡管為簡化解釋起見,方法被示出并描述為一系列框,但 是可以理解和明白,各實施例不受這些框的順序的限制,因為根據(jù)一個實施例,某 些框可以按與此處示出的其它框不同的順序和/或與此處示出的其它框同時出現(xiàn)。 此外,并非所有示出的框都是實現(xiàn)根據(jù)各實施例的方法所必需的。各實施例可以在諸如程序模塊等由一個或多個組件執(zhí)行的計算機可執(zhí)行指令 的一般上下文中描述。 一般而言,程序模塊包括執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù) 類型的例程、程序、對象、數(shù)據(jù)結(jié)構(gòu)等。通常,程序模塊的功能可如實施例的各實 例中所需地組合或分布。另外,還應(yīng)當(dāng)理解,以下且貫穿本說明書公開的方法能夠被儲存在制品上以 便于將這些方法傳輸和傳送到計算機。所使用的術(shù)語制品旨在包含可從任何計算機
可讀設(shè)備、載體或介質(zhì)訪問的計算機程序。在圖8中,示出了根據(jù)一個實施例的一方面的便于HMI開發(fā)的方法800的流 程圖。方法800通過獲得與至少一個自動化控制系統(tǒng)相關(guān)聯(lián)的GUI組件(804)而 開始(802)。該GUI組件可包括但不限于基礎(chǔ)GUI組件、合成GUI組件和/或諸 如設(shè)備、資源和/或系統(tǒng)描述等邏輯GUI組件。隨后從這些GUI組件中自動生成 GUI功能塊網(wǎng)絡(luò)(806)。這可以包括生成將隨后被鏈接以形成GUI功能塊網(wǎng)絡(luò)的 GUI功能塊。隨后在可擴充工程平臺中提供用戶交互式界面以允許通過利用GUI 功能塊網(wǎng)絡(luò)的HMI開發(fā)(808),之后該流程結(jié)束(810)。在可擴充工程平臺內(nèi) 的利用允許將GUI組件密封裝成容易遵守該可擴充工程平臺的公用格式,從而允 許容易地導(dǎo)入現(xiàn)有的GUI元素。用戶能夠容易地操縱各GUI功能塊網(wǎng)絡(luò)以創(chuàng)建期 望的HMI。參見圖9,描繪了根據(jù)一個實施例的一方面的導(dǎo)入用于HMI開發(fā)的GUI組件 的方法900的流程圖。方法900通過獲得與至少一個自動化系統(tǒng)相關(guān)聯(lián)的GUI組 件(904)而開始(902)。隨后對該GUI組件進行剖析以提供可擴充工程平臺所 需格式的元素(906)。隨后將這些GUI元件封裝到與該可擴充工程平臺兼容的自 含式可重復(fù)使用組件軟件中(908),之后該流程結(jié)束(910)。這從實質(zhì)上改善了 對現(xiàn)有GUI功能塊的導(dǎo)入。例如,圖10示出了在其中可以對GUI組件1002利用 基于JavaBeanTM的方法以通過JavaBeanTM生成器1004剖析IEC 61499 XML文件 1008,并基于該文件生成包括Beanlnfo類1010的JavaBeanTM的流程1000。隨后可 以利用査找與事件輸入INIT綁定的所有數(shù)據(jù)輸入的機制來檢測各配置參數(shù)。該配 置界面可用用于實例化并執(zhí)行IEC 61499 GUI組件的代碼來擴展。該代碼獨立于 IEC 61499 GUI組件并且能夠以文本形式結(jié)合到JavaBeanTM機制中。JavaBeanTM表 示能夠在特定工具集成平臺中利用的自含式組件。Beanlnfo類表示一類接口和實例 化支持。由此,類似的方法能夠用于其它集成開發(fā)環(huán)境中的JavaBe肌TM和Beanlnfo 類的通用表示。為了提供用于實現(xiàn)實施例的各方面的附加上下文,圖ll和以下討論旨在提供 對其中可實現(xiàn)實施例的各方面的合適的計算環(huán)境1100的簡要、概括描述。盡管各 實施例在上文中是在運行在本地計算機和/或遠(yuǎn)程計算機上的計算機程序的計算機 可執(zhí)行指令的一般上下文中描述的,但是本領(lǐng)域的技術(shù)人員將認(rèn)識到,各實施例也 可結(jié)合其它程序模塊來實現(xiàn)。 一般而言,程序模塊包括執(zhí)行特定任務(wù)和/或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的例程、程序、組件、數(shù)據(jù)結(jié)構(gòu)等。此外,本領(lǐng)域的技,人員可以 理解,本發(fā)明的方法可以用其它計算機系統(tǒng)配置來實施,包括單處理器或多處理器 計算機系統(tǒng)、小型機、大型計算機、以及個人計算機、手持式計算設(shè)備、基于微處 理器的和/或可編程消費電子產(chǎn)品等,其每一個都可操作上與一個或多個相關(guān)聯(lián)的 設(shè)備通信。所示的實施例的各方面也可在分布式計算環(huán)境中實施,其中特定任務(wù)由 通過通信網(wǎng)絡(luò)鏈接的遠(yuǎn)程處理設(shè)備來執(zhí)行。然而,各實施例的某些(如果不是所有) 方面可以在單獨的計算機上實施。在分布式計算環(huán)境中,程序模塊可以位于本地和 /或遠(yuǎn)程存儲器存儲設(shè)備中。如本申請中所使用的,術(shù)語"組件"旨在表示計算機相關(guān)實體,無論是硬件、 硬件與軟件的組合、軟件或是執(zhí)行中的軟件。例如,組件可以是但不限于,在處理 器上運行的進程、處理器、對象、實例、可執(zhí)行碼、執(zhí)行線程、程序、和/或計算 機。作為說明,在服務(wù)器上運行的應(yīng)用程序與該服務(wù)器兩者都可以是組件。此外, 組件可以包括一個或多個子組件。參考圖11,用于實現(xiàn)本發(fā)明的各方面的示例性環(huán)境1110包括計算機1112。計算機1112包括處理單元1114、系統(tǒng)存儲器1116和系統(tǒng)總線1118。系統(tǒng)總線1118 將包括但不限于系統(tǒng)存儲器1116的系統(tǒng)組件耦合至處理單元1114。處理單元1114 可以是各種可用處理器的任一種。雙微處理器和其它多處理器體系結(jié)構(gòu)也可用作處 理單元1114。系統(tǒng)總線1118可以是若干種總線結(jié)構(gòu)類型的任一種,包括存儲器總線或存儲 器控制器、外圍總線或外部總線、和/或使用各類總線體系結(jié)構(gòu)的局部總線,這些 體系結(jié)構(gòu)包括但不限于,ll位總線、工業(yè)標(biāo)準(zhǔn)體系結(jié)構(gòu)(ISA)、微通道體系結(jié)構(gòu) (MCA)、擴展ISA (EISA)、智能驅(qū)動電子設(shè)備(IDE) 、 VESA局部總線、外 圍部件互連(PCI)、通用串行總線(USB)、高級圖形端口 (AGP)、個人計算 機存儲卡國際協(xié)會總線(PCMCIA)以及小型計算機系統(tǒng)接口 (SCSI)。系統(tǒng)存儲器1116包括易失性存儲器1120和非易失性存儲器1122?;据斎? 輸出系統(tǒng)(BIOS)包括如在啟動時幫助在計算機1112內(nèi)的元件之間傳輸信息的基 本例程,它通常儲存在非易失性存儲器1122中。作為說明而非局限,非易失性存 儲器1122可包括只讀存儲器(ROM)、可編程ROM (PROM)、電可編程ROM (EPROM)、電可擦除ROM (EEPROM)或閃存。易失性存儲器1112包括擔(dān)當(dāng) 外部高速緩存的隨機存取存儲器(RAM)。作為說明而非局限,RAM以許多形式
可用,如同步RAM (SRAM)、動態(tài)RAM (DRAM)、同步DRAM (SDRAM)、 雙數(shù)據(jù)率SDRAM (DDR SDRAM)、增強型SDRAM (ESDRAM)、同步鏈路 DRAM (SLDRAM)和直接Rambus RAM (DRRAM)。計算機1112也包括可移動/不可移動、易失性/非易失性計算機存儲介質(zhì)。例 如,圖11示出了盤存儲1124。盤存儲1124包括但不限于,諸如磁盤驅(qū)動器、軟 盤驅(qū)動器、磁帶驅(qū)動器、Jaz驅(qū)動器、Zip驅(qū)動器、LS-100驅(qū)動器、閃存卡或記憶 棒等設(shè)備。另外,盤存儲1124可單獨包括存儲介質(zhì)或與其它存儲介質(zhì)組合,其它 存儲介質(zhì)包括但不限于,諸如光盤ROM設(shè)備(CD-ROM)、CD可記錄驅(qū)動器(CD-R 驅(qū)動器)、CD可重寫驅(qū)動器(CD-RW驅(qū)動器)或數(shù)字多功能盤ROM驅(qū)動器 (DVD-ROM)等光盤驅(qū)動器。為便于盤存儲設(shè)備1124連接到系統(tǒng)總線1118,通 常使用可移動或不可移動接口,如接口1126??梢岳斫猓瑘D11描述了擔(dān)當(dāng)用戶和合適的操作環(huán)境1110中描述的基本計算 機資源之間的中介的軟件。這類軟件包括操作系統(tǒng)1128。操作系統(tǒng)1128可儲存在 盤存儲1124中,它用于控制并分配計算機系統(tǒng)1112的資源。系統(tǒng)應(yīng)用程序1130 利用操作系統(tǒng)1128通過儲存在系統(tǒng)存儲器1116或盤存儲1124上的程序模塊1132 和程序數(shù)據(jù)1134對資源的管理??梢岳斫猓景l(fā)明可用各種操作系統(tǒng)或操作系統(tǒng) 的組合來實現(xiàn)。用戶通過輸入設(shè)備1136向計算機1112輸入命令和信息。輸入設(shè)備1136包括 但不限于,諸如鼠標(biāo)、跟蹤球、指示筆、觸摸墊等定點設(shè)備、鍵盤、麥克風(fēng)、操縱 桿、游戲墊、圓盤式衛(wèi)星天線、掃描儀、TV調(diào)諧卡、數(shù)碼相機、數(shù)碼攝像機、web 攝像頭等等。這些和其它輸入設(shè)備通過系統(tǒng)總線U18經(jīng)由接口端口 1138連接到處 理單元1114。接口端口1138包括,例如,串行端口、并行端口、游戲端口以及通 用串行總線(USB)。輸出設(shè)備1140使用與輸入設(shè)備1136相同類型端口中的某一 些。由此,例如,USB端口可用于向計算機1112提供輸入,并從計算機1112輸 出信息到輸出設(shè)備1140。提供了輸出適配器1142以說明存在一些輸出設(shè)備1140, 如監(jiān)視器、揚聲器和打印機,以及需要特殊適配器的其它輸出設(shè)備1140。作為說 明而非局限,輸出適配器1142包括提供輸出設(shè)備1140和系統(tǒng)總線1118之間的連 接裝置的顯卡和聲卡。應(yīng)當(dāng)注意,其它設(shè)備和/或設(shè)備的系統(tǒng)提供了輸入和輸出能 力,如遠(yuǎn)程計算機1144。計算機1112可以使用到一個或多個遠(yuǎn)程計算機,如遠(yuǎn)程計算機1144的邏輯
連接在網(wǎng)絡(luò)化環(huán)境中操作。遠(yuǎn)程計算機1144可以是個人計算機、服務(wù)器、路由器、 網(wǎng)絡(luò)PC、工作站、基于微處理器的電器、對等設(shè)備或其它常見的網(wǎng)絡(luò)節(jié)點等等,并通常包括相對于計算機1112所描述的許多或所有元件。為簡明起見,僅對遠(yuǎn)程 計算機1144示出了存儲器存儲設(shè)備1146。遠(yuǎn)程計算機1144通過網(wǎng)絡(luò)接口 1148邏 輯上連接至計算機1112,然后通過通信連接1150物理地連接。網(wǎng)絡(luò)接口1148包 含諸如局域網(wǎng)(LAN)和廣域網(wǎng)(WAN)等通信網(wǎng)絡(luò)。LAN技術(shù)包括光纖分布式 數(shù)據(jù)接口 (FDDI)、銅分布式數(shù)據(jù)接口 (CDDI)、以太網(wǎng)/IEEE 802.3、令牌環(huán)/IEEE 802.5等等。WAN技術(shù)包括但不限于,點對點鏈路、諸如綜合業(yè)務(wù)數(shù)字網(wǎng)(ISDN) 及變體等電路交換網(wǎng)絡(luò)、分組交換網(wǎng)絡(luò)以及數(shù)字用戶線(DSL)。通信連接1150指用于將網(wǎng)絡(luò)接口 1148連接到總線1118的硬件/軟件。盡管為 說明清楚起見,示出通信連接1150在計算機1112內(nèi),然而它也可以對計算機1112 是外部的。僅為示例性目的,連接到網(wǎng)絡(luò)接口 1148所必需的硬件/軟件包括內(nèi)部和 外部技術(shù),如包括常規(guī)電話級調(diào)制解調(diào)器、線纜調(diào)制解調(diào)器和DSL調(diào)制解調(diào)器的 調(diào)制解調(diào)器、ISDN適配器和以太網(wǎng)卡。圖12示出了本發(fā)明可與其交互的示例計算環(huán)境1200的另一框圖。系統(tǒng)1200 還示出了包括一個或多個客戶機1202的系統(tǒng)??蛻魴C1202可以是硬件和/或軟件 (如,線程、進程、計算裝置)。系統(tǒng)1200也包括一個或多個服務(wù)器1204。服務(wù) 器1204也可以是硬件和/或軟件(如,線程、進程、計算裝置)??蛻魴C1202和 服務(wù)器1204之間的一種可能的通信可以是適用于在兩個或多個計算機進程之間傳 輸?shù)臄?shù)據(jù)分組的形式。系統(tǒng)1200包括可用于便于在客戶機1202和服務(wù)器1204之 間通信的通信框架1208??蛻魴C1202連接至可用于儲存對客戶機1202本地的信 息的一個或多個客戶機數(shù)據(jù)存儲1210。類似地,服務(wù)器1204連接至可用于儲存對 服務(wù)器1204本地的信息的一個或多個服務(wù)器數(shù)據(jù)存儲1206。在一個實施例的一實例中,在兩個或更多計算機組件之間傳送的便于控制自 動化系統(tǒng)的數(shù)據(jù)分組至少部分地包括與至少部分地由與自動化開發(fā)系統(tǒng)兼容的功 能塊表示的GUI組件有關(guān)的信息。可以理解,各實施例的系統(tǒng)和/或方法可在同樣促進計算機組件和非計算機相 關(guān)組件的自動化GUI開發(fā)中使用。此外,本領(lǐng)域的技術(shù)人員可以認(rèn)識到,各實施 例的系統(tǒng)和/或方法可在各種各樣的電子相關(guān)技術(shù)中采用,包括但不限于計算機、 服務(wù)器和/或手持式電子設(shè)備等。
以上所描述的包括各實施例的示例。當(dāng)然,不可能為了描述各實施例的目的 而描述組件或方法的每一可想到的組合,但是本領(lǐng)域的普通技術(shù)人員可以認(rèn)識到各 實施例的許多其它組合和置換都是可能的。因此,本發(fā)明旨在包含落入所附權(quán)利要 求書的精神和范圍內(nèi)的所有這些更改、修改和變化。此外,就在詳細(xì)描述或權(quán)利要 求書中使用術(shù)語"包括"而言,這一術(shù)語旨在以類似于術(shù)語"包含"在用作權(quán)利要 求書中的過渡詞時所解釋的方式那樣是包括性的。
權(quán)利要求
1.一種生成用于分布式自動化系統(tǒng)的人機接口(HMI)的系統(tǒng),包括從用戶圖形界面(GUI)組件中自動生成GUI功能塊網(wǎng)絡(luò)的GUI建模組件(208);以及利用GUI功能塊網(wǎng)絡(luò)來提供交互式HMI開發(fā)的GUI開發(fā)組件(210),所述GUI開發(fā)組件(210)與可擴充工程平臺接口。
2. 如權(quán)利要求l所述的系統(tǒng),其特征在于,還包括按照需要格式化GUI組件(304)以供在所述可擴充工程平臺內(nèi)利用的導(dǎo)入機 制(308)。
3. 如權(quán)利要求2所述的系統(tǒng),其特征在于,所述導(dǎo)入機制(308)將所述GUI 組件(304)封裝在自含式可重復(fù)使用組件軟件中。
4. 如權(quán)利要求2所述的系統(tǒng),其特征在于,所述導(dǎo)入機制(308)自動剖析 GUI組件(304)以提供所需格式的元素。
5. 如權(quán)利要求l所述的系統(tǒng),其特征在于,所述GUI組件(304)包含基礎(chǔ) GUI組件或合成GUI組件。
6. 如權(quán)利要求l所述的系統(tǒng),其特征在于,所述GUI開發(fā)組件(312)與可 擴充工程平臺組件接口以提供數(shù)據(jù)處理、文件處理、GUI編輯、和/或用戶接口機 制來協(xié)助GUI開發(fā)。
7. 如權(quán)利要求l所述的系統(tǒng),其特征在于,還包括基于經(jīng)由用戶和/或系統(tǒng)交互選擇的功能塊來自動生成合成GUI組件的合成 GUI生成組件(316)。
8. 如權(quán)利要求l所述的系統(tǒng),其特征在于,還包括至少部分基于所生成的GUI功能塊網(wǎng)絡(luò)來提供自動化設(shè)備描述、自動化系統(tǒng) 描述和/或自動化資源描述的描述組件(318)。
9. 如權(quán)利要求l所述的系統(tǒng),其特征在于,所述系統(tǒng)與國際電工技術(shù)委員會 (IEC)標(biāo)準(zhǔn)61499兼容。
10. —種生成用于分布式自動化系統(tǒng)的人機接口 (HMI)的方法,包括 獲得與至少一個自動化系統(tǒng)相關(guān)聯(lián)的GUI組件(804); 從所述GUI組件中自動生成GUI功能塊網(wǎng)絡(luò)(806);以及 在可擴充工程平臺中提供用戶交互式界面以允許通過利用所述GUI功能塊網(wǎng) 絡(luò)的HMI開發(fā)(808)。
11. 如權(quán)利要求IO所述的方法,其特征在于,還包括 格式化GUI組件以供在所述可擴充工程平臺內(nèi)利用(904)。12. 如權(quán)利要求11所述的方法,其特征在于,所述格式化包括將所述GUI 組件封裝在自含式可重復(fù)使用組件軟件中(904)。13. 如權(quán)利要求ll所述的方法,其特征在于,還包括 剖析GUI組件以提供所需格式的元素(906)。14. 如權(quán)利要求10所述的方法,其特征在于,所述GUI組件包含基礎(chǔ)GUI 組件或合成GUI組件。15. 如權(quán)利要求IO所述的方法,其特征在于,還包括與所述可擴充工程平臺的功能組件接口以提供數(shù)據(jù)處理、文件處理、GUI編 輯、和/或用戶接口機制來促進GUI開發(fā)(808)。16. 如權(quán)利要求IO所述的方法,其特征在于,還包括 基于經(jīng)由用戶和/或系統(tǒng)交互選擇的功能塊來自動生成合成GUI組件(806)。17. 如權(quán)利要求IO所述的方法,其特征在于,還包括至少部分基于GUI功能塊網(wǎng)絡(luò)來生成自動化設(shè)備描述、自動化系統(tǒng)描述和/ 或自動化資源描述(806)。18. 如權(quán)利要求10所述的方法,其特征在于,所述方法與國際電工技術(shù)委員 會(IEC)標(biāo)準(zhǔn)61499兼容。19. 一種生成用于分布式自動化系統(tǒng)的人機接口 (HMI)的系統(tǒng),包括 用于從GUI組件(312)中自動生成GUI功能塊網(wǎng)絡(luò)的裝置;以及 用于利用GUI功能塊網(wǎng)絡(luò)在可擴充工程平臺(316)內(nèi)提供交互式HMI開發(fā)的裝置。
全文摘要
GUI框架充分利用可擴充工程平臺的接口來提供能夠容易地構(gòu)造用于自動化系統(tǒng)的HMI的工具。該GUI框架能夠?qū)氍F(xiàn)有的GUI組件和/或創(chuàng)建新的GUI組件。該GUI框架還可以組合各基礎(chǔ)GUI組件以創(chuàng)建復(fù)雜的合成GUI組件。也可利用導(dǎo)入機制通過將現(xiàn)有的GUI組件封裝到與工程平臺兼容的公用可重復(fù)使用軟件代碼中來導(dǎo)入現(xiàn)有GUI組件。該GUI框架利用功能塊來表示GUI組件并在需要時自動生成帶鏈接的GUI功能塊網(wǎng)絡(luò)。這允許用最少的用戶精力來創(chuàng)建復(fù)雜的GUI。
文檔編號G06F9/44GK101110029SQ200710129039
公開日2008年1月23日 申請日期2007年6月29日 優(yōu)先權(quán)日2006年6月29日
發(fā)明者A·索伊特, D·D·F·J·阿維格, D·J·格特沃德, I·特澤克, J·H·克里斯滕森, K·H·豪爾, T·I·斯卓瑟 申請人:洛克威爾自動控制技術(shù)股份有限公司