專利名稱:一種用于基于解析樹形操作順序的系統(tǒng)自動(dòng)化的系統(tǒng)和方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種用于使系統(tǒng)自動(dòng)化的系統(tǒng)和方法,其中解析器基于以樹形順序形式接收的指令產(chǎn)生和執(zhí)行執(zhí)行代碼,并且其中樹形順序包括限定相應(yīng)的自動(dòng)化工序的并行操作的信息。樹形順序的定義可以基于標(biāo)準(zhǔn)化的人機(jī)可讀格式,例如XML文檔。
背景技術(shù):
系統(tǒng)自動(dòng)化的任務(wù)處理機(jī)器或者工業(yè)技術(shù)方法實(shí)施的操作的定義和執(zhí)行。為了該用途,經(jīng)歷自動(dòng)化的系統(tǒng)(例如,化學(xué)反應(yīng)器系統(tǒng)、汽車功能測(cè)試裝備、或者分析儀器,以下 稱為受控設(shè)備或者工藝)通常被連接到至少一個(gè)致動(dòng)器單元(以下稱為行動(dòng)單元)和至少一個(gè)傳感器單元,其中至少一個(gè)傳感器單元收集關(guān)于設(shè)備的信息和輸出該信息到控制器,并且控制器基于接收的信息計(jì)算控制信號(hào)并且輸出該控制信號(hào)到連接到并且控制設(shè)備的至少一個(gè)行動(dòng)單元。相應(yīng)的行動(dòng)單元可以包括致動(dòng)部件,例如閥、泵或者加熱器,但是可以進(jìn)一步包括以預(yù)定的給定值調(diào)節(jié)相應(yīng)致動(dòng)部件的設(shè)置的分布式控制器。同樣地,自動(dòng)化系統(tǒng)的上述控制器可以被配置為以給定值的形式向至少一個(gè)行動(dòng)單元輸出控制信號(hào),其中相應(yīng)的給定值表示利用相應(yīng)的分布式控制器調(diào)節(jié)的值的期望水平。此外,相應(yīng)的傳感器單元可以包括傳感器元件,例如熱電偶、壓力傳感器或者pH傳感器,但是可以進(jìn)一步包括用于對(duì)相應(yīng)的傳感器元件收集的數(shù)據(jù)進(jìn)行濾波的濾波元件或者估算元件,以便提高傳感器信號(hào)的質(zhì)量或者利用狀態(tài)觀測(cè)器結(jié)構(gòu)估算自動(dòng)化系統(tǒng)的狀態(tài),例如Kalman濾波器或者在現(xiàn)有技術(shù)中已知的其他類型的動(dòng)態(tài)濾波器。從這種意義上講,相應(yīng)的傳感器單元收集關(guān)于設(shè)備的信息并且輸出該信息到控制器。自動(dòng)化系統(tǒng)可以包括簡(jiǎn)單的或者復(fù)雜的機(jī)器或者技術(shù)工藝,其通過(guò)至少一個(gè)行動(dòng)單元和至少一個(gè)傳感器單元連接到控制器單元,并且被設(shè)計(jì)和實(shí)現(xiàn)用于執(zhí)行某些類型的預(yù)定操作的執(zhí)行任務(wù),例如化學(xué)反應(yīng)器系統(tǒng)可以包括帶有傳感器元件(例如熱學(xué)部件、壓力傳感器或者pH傳感器)的傳感器單元和帶有致動(dòng)部件(僅舉幾個(gè)可能的例子,例如閥、泵、加熱器)的行動(dòng)單元,其中自動(dòng)化系統(tǒng)的任務(wù)可以涉及化學(xué)合成。汽車功能測(cè)試裝備可以包括多個(gè)不同的應(yīng)用在自動(dòng)化系統(tǒng)中用于檢驗(yàn)或者測(cè)試汽車部件性能的傳感器和行動(dòng)單元。分析儀器可以包括應(yīng)用在自動(dòng)化實(shí)驗(yàn)室測(cè)試設(shè)備中用于確定對(duì)象或者有機(jī)或者無(wú)機(jī)化合物或者混合物的性質(zhì)的不同傳感器和行動(dòng)單元。所述特性可以是化學(xué)成分或者某些物理特性,或者是測(cè)試對(duì)象或者化合物或者混合物對(duì)另一對(duì)象、化合物或者混合物所具有的作用。自動(dòng)化系統(tǒng)的控制器包括計(jì)算處理單元,用于執(zhí)行計(jì)算和可能的邏輯判斷,從而決定各個(gè)獨(dú)立部件(例如自動(dòng)化系統(tǒng)的行動(dòng)單元)應(yīng)該怎樣隨著時(shí)間改變它們的設(shè)置。如果上述判斷基于測(cè)量的傳感器值,則控制器被認(rèn)為是以閉環(huán)星座圖實(shí)現(xiàn)的,而在開環(huán)控制器中作出的判斷與任何上述傳感器值無(wú)關(guān)。從而,自動(dòng)化系統(tǒng)執(zhí)行某些類型的操作以滿足期望的任務(wù),其中操作的順序和結(jié)構(gòu)通常是以某種順序的形式限定的。根據(jù)所涉及的任務(wù),以人工或者自動(dòng)化的方式限定上述順序以操作自動(dòng)化系統(tǒng),即,其控制器。所謂的定序器簡(jiǎn)化了限定和應(yīng)用上述適當(dāng)?shù)牟僮黜樞虻墓ぷ鳎⑶铱梢员徊僮鲉T通過(guò)例如順序腳本、順序表或者高度可配置的順序控制用戶接口來(lái)使用和給予命令。關(guān)于這一點(diǎn),用于命令定序器的順序信息包括連續(xù)排列的操作的列表,其被定義為由定序器依次解析的步驟,請(qǐng)參見,例如如圖I所示的直線型腳本順序。一個(gè)步驟通常包括執(zhí)行某動(dòng)作的語(yǔ)句、定制那些動(dòng)作的一組可能的輸入?yún)?shù)和可能的某些種類的輸出值。由此,語(yǔ)句可以是指例如一般概念上的軟件功能或者方法。關(guān)于這一點(diǎn),定序器可以被視為解析器并且構(gòu)成自動(dòng)化系統(tǒng)的一部分。例如,文獻(xiàn)W003/054561記載了變換器測(cè)試順序編輯器,其使得測(cè)試器能夠利用可調(diào)節(jié)的測(cè)試參數(shù)實(shí)現(xiàn)測(cè)試順序。關(guān)于這一點(diǎn),測(cè)試順序引擎使得測(cè)試器能夠執(zhí)行測(cè)試的順序,以及自動(dòng)化測(cè)試順序編輯器允許執(zhí)行測(cè)試順序的編輯。由此,測(cè)試指令是根據(jù)編輯的測(cè)試順序提供的順序執(zhí)行的。然而,由于通常期望使得操作在自動(dòng)化系統(tǒng)中不僅順序運(yùn)行,而且還期望可以并行運(yùn)行,以不同機(jī)器零件的同時(shí)校準(zhǔn)的任務(wù)作為例子,對(duì)于自動(dòng)化系統(tǒng)的操作員來(lái)說(shuō),很清楚的,具有并行命令系統(tǒng)和并行執(zhí)行多個(gè)操作的簡(jiǎn)單方式是有利的。然而,由現(xiàn)有技術(shù)的定序器接收的信息沒有提供限定以并行方式執(zhí)行的操作,并且操作員需要在次最佳的和耗時(shí)的步驟順序執(zhí)行之間作出選擇,或者面對(duì)這樣的選項(xiàng),即,需要請(qǐng)求系統(tǒng)集成商(例如提供定序器的人或者供應(yīng)者)使用其在例如C++、Basic或者Labview方面對(duì)裁剪的并行校準(zhǔn)子程序進(jìn)行編程的專家技術(shù)決竅和高級(jí)編程技巧。由此,阻礙了操作員快速實(shí)現(xiàn)并行處理的新想法,并且操作員被迫涉及系統(tǒng)集成商并且被迫接受相應(yīng)招致的開發(fā)時(shí)間、成本及其他不便。
發(fā)明內(nèi)容
本發(fā)明的目的涉及基于解釋樹形順序操作的系統(tǒng)自動(dòng)化的改進(jìn)或者可選的系統(tǒng)和方法。根據(jù)權(quán)利要求書的內(nèi)容獲得該目的。根據(jù)本發(fā)明的一個(gè)方面,本發(fā)明涉及改進(jìn)的自動(dòng)化系統(tǒng),包括由至少一個(gè)行動(dòng)單元和至少一個(gè)傳感器單元連接的控制器和設(shè)備,其中所述至少一個(gè)傳感器單元收集關(guān)于所述設(shè)備的信息和輸出該信息到所述控制器,控制器基于接收的信息計(jì)算控制信號(hào)兵輸出該控制信號(hào)到至少一個(gè)行動(dòng)單元??刂破靼ㄌ幚韱卧?,用于利用控制器計(jì)算和輸出所述控制信號(hào),其中所述處理單元可以包括一個(gè)或者多個(gè)數(shù)字處理器。進(jìn)一步的,自動(dòng)化系統(tǒng)包括解析器,其產(chǎn)生和執(zhí)行控制器的處理單元上的執(zhí)行代碼,其中所述解析器接收具有多個(gè)樹形順序性質(zhì)的指令。所述樹形順序可以例如,僅舉出幾種可能性,人工地提供,例如以自動(dòng)化系統(tǒng)的操作員人工編輯的腳本的方式提供,或者基于在自動(dòng)設(shè)計(jì)軟件工具中提供的操作 員輸入而產(chǎn)生該樹形順序。根據(jù)本發(fā)明的實(shí)施例,樹形順序被定義為子順序、步驟和語(yǔ)句的分級(jí)結(jié)構(gòu),其彼此之間涉及父-子關(guān)系。所述分級(jí)結(jié)構(gòu)確切地從一個(gè)子順序開始,稱為根子順序,該根子順序具有至少一個(gè)步驟作為孩子,其中該至少一個(gè)步驟包括至少一個(gè)語(yǔ)句作為孩子。當(dāng)子順序包含多于一個(gè)孩子步驟時(shí),這些步驟彼此是兄弟。當(dāng)步驟包含多于一個(gè)孩子語(yǔ)句時(shí),這些語(yǔ)句彼此是兄弟。每一個(gè)相應(yīng)的語(yǔ)句是賦值語(yǔ)句、暫停語(yǔ)句或者控制流語(yǔ)句,其中賦值語(yǔ)句限定將由所述控制器執(zhí)行的計(jì)算或者外圍過(guò)程,暫停語(yǔ)句在暫停語(yǔ)句的位置處暫停執(zhí)行,以及控制流語(yǔ)句用于啟動(dòng)孩子子順序。優(yōu)選地,所述孩子子順序具有與所述根子順序相同的特性,因此,對(duì)于遺傳線可以進(jìn)行多深沒有限制。所述解析器產(chǎn)生和執(zhí)行的執(zhí)行代碼使得處理單元執(zhí)行每一子順序以串行方式啟動(dòng)的孩子步驟。每一步驟啟動(dòng)的孩子語(yǔ)句由處理單元以并行方式執(zhí)行或者以半并行方式執(zhí)行。換言之,處理單元以串行方式處理兄弟步驟,以并行或者半并行方式處理兄弟語(yǔ)句。這里,處理單元可以允許并行處理或者半并行處理兄弟語(yǔ)句,其中半并行處理基于以高速處理速率運(yùn)行處理單元,這將在下文中詳細(xì)描述。
相應(yīng)的賦值語(yǔ)句通常與將被控制的處理相關(guān),例如表示可以執(zhí)行計(jì)算和設(shè)置行動(dòng)單元的值的語(yǔ)句,或者輸出消息到處理操作員的語(yǔ)句,或者打開需要來(lái)自操作員的輸入的顯示器中的消息箱,暫停父步驟的執(zhí)行直到操作員關(guān)閉消息箱為止,或者適應(yīng)數(shù)據(jù)記錄器的特性的語(yǔ)句,或者存儲(chǔ)電流行動(dòng)器或者傳感器單元值用于稍后使用的語(yǔ)句。在本發(fā)明的優(yōu)選實(shí)施例中,以XML限定解析器接收的指令,例如在XML文檔中限定解析器接收的指令,以及更優(yōu)選的,具有以符合XML綱要(XML schema)語(yǔ)言限定的綱要的有效XML文檔中提供的所述指令。應(yīng)當(dāng)注意,如本領(lǐng)域技術(shù)人員容易想到的,多種標(biāo)準(zhǔn)化的人機(jī)可讀格式可以適用于相同的目的。優(yōu)選使用能夠暫停(suspend)執(zhí)行一段具體等待時(shí)間而不暫停兄弟語(yǔ)句的執(zhí)行的暫停語(yǔ)句。指定的等待時(shí)間可以是特定長(zhǎng)度的時(shí)間段,或者是定序器計(jì)時(shí)器需要的時(shí)間段成為指定的等待時(shí)間的倍數(shù)。后者可用于同步并行的子順序。如在現(xiàn)有技術(shù)中已知的,所述語(yǔ)句在不同的腳本和編程語(yǔ)言中具有不同的名稱。這些語(yǔ)句可以例如被稱為等待、中止、暫停。優(yōu)選使用控制流語(yǔ)句啟動(dòng)新的子順序。所述控制流語(yǔ)句無(wú)條件地或者有條件地啟動(dòng)新的孩子子順序。所述控制流語(yǔ)句是有條件的控制流語(yǔ)句,其只有在滿足某些條件時(shí)才執(zhí)行或者才執(zhí)行孩子子順序,或者是循環(huán)控制流語(yǔ)句,其執(zhí)行孩子子順序零次或者更多次,直到滿足某些條件,或者是遠(yuǎn)距離控制流語(yǔ)句,其執(zhí)行遠(yuǎn)距離子順序,隨后控制流通常返回。如在現(xiàn)有技術(shù)中已知的,所述語(yǔ)句在不同的腳本和編程語(yǔ)言中具有不同的名稱。這些語(yǔ)句可以被例如稱為,僅舉幾個(gè)例子for、whiIe、if-then-else、repeat、subprocedure、select—case、do—while。優(yōu)選的,賦予所述循環(huán)控制流語(yǔ)句如下能力,能夠在每次完成孩子子順序時(shí)暫停,以及在定序器計(jì)時(shí)器的值成為指定用于循環(huán)控制流語(yǔ)句的間隔時(shí)間的倍數(shù)時(shí)繼續(xù)。在本發(fā)明的優(yōu)選實(shí)施例中,設(shè)備是汽車功能測(cè)試裝備,在本發(fā)明的可選的優(yōu)選實(shí)施例中,設(shè)備是化學(xué)反應(yīng)器系統(tǒng),或者在本發(fā)明的可選的優(yōu)選實(shí)施例中,設(shè)備是分析儀器。優(yōu)選地,其中至少一個(gè)傳感器單元測(cè)量轉(zhuǎn)速、力、溫度值、組分的濃度、電壓、電流、壓力、質(zhì)量、流速或者數(shù)字輸出的邏輯狀態(tài)。優(yōu)選的,自動(dòng)化系統(tǒng)進(jìn)一步包括連接到所述控制器的顯示器,其中至少其中一個(gè)所述語(yǔ)句輸出消息到顯示器上給自動(dòng)化系統(tǒng)的操作員。上述顯示器可以例如是TFT、LCD屏或者適用于傳達(dá)信息給操作員的任何其他類型的顯示器。還可以具有連接到控制器的一個(gè)或更多個(gè)電子文本消息介質(zhì),在該介質(zhì)上,至少其中一個(gè)所述語(yǔ)句可以啟動(dòng)輸出電子信息給操作員。如在現(xiàn)有技術(shù)中已知的,存在各種消息服務(wù),例如,僅舉幾個(gè)例子,電子郵件、SMS、推特。在本發(fā)明的優(yōu)選實(shí)施例中,所述解析器產(chǎn)生執(zhí)行代碼包含產(chǎn)生中間表達(dá)代碼的中間步驟。這里,解析器將收到的至少一個(gè)樹形順序形式的指令轉(zhuǎn)化為某些中間表達(dá)代碼并且執(zhí)行該中間表達(dá)代碼在可選的優(yōu)選實(shí)施例中,解析器接收的至少一個(gè)樹形順序表示解析器直接在處理單元上執(zhí)行的源代碼。在另一可選的優(yōu)選實(shí)施例中,所述解析器是線性化單元,其將樹形順序變換為多個(gè)信息棧,并且所述處理單元處理所述信息棧。所述線性化單元從所述樹形順序產(chǎn)生引用子順序棧,引用步驟棧,引用語(yǔ)句棧和引用引用子順序的引用棧,其在開始時(shí)僅僅包含對(duì)根子順序的引用。引用語(yǔ)句的所述棧中的每一個(gè)語(yǔ)句包含關(guān)于語(yǔ)句必須執(zhí)行的動(dòng)作的數(shù)據(jù),今后調(diào)用的語(yǔ)句數(shù)據(jù),和如果所述引用語(yǔ)句棧中的所述語(yǔ)句是條件控制流語(yǔ)句,則所述語(yǔ)句數(shù)據(jù)還包含例如證實(shí)的條件,對(duì)引用子順序棧中的孩子子順序的一個(gè)或多個(gè)引用的列表,由此構(gòu)造I對(duì)η的父-子關(guān)系,并且如果所述引用語(yǔ)句棧中的所述語(yǔ)句是循環(huán)控制流語(yǔ)句,則所述語(yǔ)句數(shù)據(jù)除了例如循環(huán)迭代計(jì)數(shù)器之外還包含對(duì)于引用子順序棧中的孩子子順序的一個(gè)引用,由此構(gòu)造I對(duì)I的父-子關(guān)系。所述引用步驟棧中的每一個(gè)步驟包含對(duì)引用語(yǔ)句棧中的孩子語(yǔ)句的一個(gè)或更多個(gè)引用的列表,由此構(gòu)造I對(duì)η的父-子關(guān)系,以及每個(gè)所述列表跟蹤所述孩子語(yǔ)句的狀態(tài),所述狀態(tài)可以是"開放"、"正在進(jìn)行"或者"完成"。所述引用子順序棧中的每一個(gè)子順序包含對(duì)于所述引用子順序棧中的啟動(dòng)如下步驟的子順序的單個(gè)引用,所述步驟啟動(dòng)那些啟動(dòng)所述子順序的語(yǔ)句,由此構(gòu)造I對(duì)I的曾祖父-對(duì)曾孫的關(guān)系,以及所述引用子順序棧中的每一個(gè)子順序包含引用所述引用步驟棧中的孩子步驟的分類表,由此構(gòu)造I對(duì)η的父母-孩子關(guān)系,以及所述引用子順序棧中的每一個(gè)子順序存儲(chǔ)對(duì)執(zhí)行所述列表中步驟的引用的位置,所述位置下文被稱為調(diào)用步驟迭代子,以及所執(zhí)行的步驟在下文中被稱為被調(diào)用的激活步驟,以及每一個(gè)步驟迭代子的初始值是O。所述線性化單元發(fā)送所述棧到所述處理單元。所述處理單元根據(jù)先進(jìn)先出(FIFO)機(jī)制以連續(xù)的方式連續(xù)地處理對(duì)于所述引用子順序棧中的子順序的所述引用棧中的任何引用,所述棧在下文中稱為先進(jìn)先出隊(duì)列。對(duì)所述先進(jìn)先出隊(duì)列中的所述子順序的所述引用的處理機(jī)制如下。I)所述處理單元從所述先進(jìn)先出隊(duì)列獲得對(duì)所述子順序棧中的子順序的下一個(gè)引用,在下文中被稱作激活子順序。2)所述處理單元從所述子順序棧讀取激活子順序。3)所述處理單元從所述激活子順序讀取引用孩子步驟的列表。4)所述處理單元如下處理對(duì)孩子步驟的所述引用i)所述處理單元將所述激活子順序的所述步驟迭代子增加1,由此使得下一個(gè)步驟激活。ii)所述處理單元從所述對(duì)孩子步驟的引用的所述列表讀取對(duì)激活步驟的引用。
iii)所述處理單元從所述引用步驟棧讀取激活步驟。
iv)所述處理單元執(zhí)行所述激活步驟。V)取決于從所執(zhí)行的激活步驟接收的狀態(tài)信息,四種情況都是可能的,a)激活步驟是"完成"的并且迭代子小于所述列表中對(duì)孩子步驟的引用次數(shù),而在這樣情況下處理單元返回到對(duì)所述子順序的所述引用的所述處理機(jī)制的點(diǎn)4i)。b)激活步驟是"開放的",在這種情況下,所述處理單元將對(duì)激活子順序的引用放入先進(jìn)先出隊(duì)列,并且所述處理單元停止執(zhí)行該激活子順序。c)激活步驟"正在進(jìn)行",在這種情況下,所述處理單元停止執(zhí)行該激活子順序。d)激活步驟是"完成"的并且迭代子等于所述列表中引用孩子步驟的次數(shù),在這種情況下,處理單元將對(duì)曾祖父子順序的引用寫入到先進(jìn)先出隊(duì)列。如果沒有對(duì)曾祖父的引用,則結(jié)束的子順序是根子順序并且順序已經(jīng)就緒。所述激活孩子步驟的處理機(jī)制如下。I)所述處理單元接收對(duì)所述步驟棧中的所述激活步驟的引用。2)所述處理單元從所述步驟棧讀取激活步驟。3)所述處理單元從所述激活步驟讀取具有孩子語(yǔ)句的列表。4)所述處理單元重復(fù)以下關(guān)于所有"開放"孩子語(yǔ)句。 i )所述處理單元獲得對(duì)下一個(gè)孩子語(yǔ)句的引用,其在下文中被稱作激活語(yǔ)句。ii)所述處理單元從所述引用語(yǔ)句棧讀取所述激活語(yǔ)句。iii)所述處理單元執(zhí)行所述激活語(yǔ)句并且從所述激活語(yǔ)句接收回狀態(tài)。所述處理單元相應(yīng)地改變所述激活步驟的孩子語(yǔ)句的所述列表中所述激活語(yǔ)句的狀態(tài)。5)當(dāng)已經(jīng)執(zhí)行了所有的"開放"的孩子語(yǔ)句,所述處理單元具有繼續(xù)進(jìn)行的如下可能性i)具有引用所述步驟的孩子語(yǔ)句的所述列表包含至少一個(gè)對(duì)"正在進(jìn)行"的孩子語(yǔ)句的引用,在這種情況下,激活步驟向父子順序報(bào)告"正在進(jìn)行"。ii)具有引用所述步驟的孩子語(yǔ)句的所述列表包含至少一個(gè)對(duì)"開放"的孩子語(yǔ)句的引用,在這種情況下,激活步驟向父子順序報(bào)告"開放"。iii)具有引用所述步驟的孩子語(yǔ)句的所述列表僅包含對(duì)"完成"的孩子語(yǔ)句的引用,在這種情況下,激活步驟向父子順序報(bào)告"完成"。所述激活語(yǔ)句的處理機(jī)制如下。I)所述處理單元接收對(duì)所述語(yǔ)句棧中的所述激活語(yǔ)句的引用。2)所述處理單元從所述語(yǔ)句棧讀取激活語(yǔ)句。3)所述處理單元從所述激活語(yǔ)句讀取語(yǔ)句數(shù)據(jù)。3)如果狀態(tài)是"開放"或者"正在進(jìn)行",則所述處理單元執(zhí)行所述激活語(yǔ)句。這里存在三種可能的處理a)所述語(yǔ)句是賦值語(yǔ)句,在這種情況下,完整地執(zhí)行該語(yǔ)句并且它的父步驟收到所述語(yǔ)句被"完成"的信息。b)所述語(yǔ)句是暫停語(yǔ)句。所述處理單元不被所述暫停語(yǔ)句所暫停,而是,所述處理單元檢查該暫停語(yǔ)句是否懸置,在這種情況下,父步驟收到該語(yǔ)句是"開放"的信息,或者如果完成了懸置,在這種情況下,父步驟收到語(yǔ)句是"完成"的信息。
c)所述激活語(yǔ)句是條件控制流語(yǔ)句,其條件由處理單元證實(shí),并且當(dāng)滿足條件時(shí),所述處理單元從所述語(yǔ)句數(shù)據(jù)得到對(duì)孩子子順序的相應(yīng)引用,并且將其放入先進(jìn)先出隊(duì)列,以及父步驟收到語(yǔ)句是"完成"的信息。d)所述激活語(yǔ)句是循環(huán)控制流語(yǔ)句。所述處理單元確定是否需要新的的迭代。當(dāng)需要新的迭代時(shí),所述處理單元從所述語(yǔ)句數(shù)據(jù)得到對(duì)孩子子順序的相應(yīng)引用,并且將其放入先進(jìn)先出隊(duì)列,以及父步驟收到語(yǔ)句是"正在進(jìn)行"的信息,當(dāng)不需要新的迭代時(shí),則父步驟收到語(yǔ)句是"完成"的信息。
應(yīng)當(dāng)理解,所描述的以信息棧的方式組織樹形順序和如上所述的上述棧的后續(xù)處理的方法是示例性的,以及其他組織和處理樹形順序得到相同操作方式的方法都是可能的。其他方法的一個(gè)好例子是不使用步驟迭代子,而是從所述順序棧中的激活順序刪除對(duì)"完成"的孩子步驟的引用。還可以通過(guò)例如建立用于不同的語(yǔ)句類型的棧從而以其他方式組織棧數(shù)據(jù)。還可以在先進(jìn)先出隊(duì)列僅包含對(duì)暫停子順序的引用的情況下通過(guò)真的暫停執(zhí)行來(lái)降低CPU的使用率,在這種情況下,處理單元應(yīng)當(dāng)檢驗(yàn)直到它必須再次開始執(zhí)行為止可以暫停多久。還應(yīng)注意,處理單元可以被賦予不是所述發(fā)明的一部分的其他任務(wù)。例如,處理可以周期性地檢驗(yàn)用戶是否按下停止按鈕以中止執(zhí)行,或者傳感器值是否處于范圍之外(在這種情況下其可以中止執(zhí)行)。在本發(fā)明的優(yōu)選實(shí)施例中,其中所述解析器接收多個(gè)樹形順序形式的指令,其中每一樹形順序包括根順序以及由此所述處理單元并行地執(zhí)行所述多個(gè)樹形順序。此外,在本發(fā)明的優(yōu)選實(shí)施例中,所述解析器執(zhí)行預(yù)編譯的代碼。這里所述解析器明確地執(zhí)行由編譯器存儲(chǔ)的預(yù)編譯代碼,其中所述編譯器可以構(gòu)成上述解析器的一部分。根據(jù)本發(fā)明的一方面,提供了一種使系統(tǒng)自動(dòng)化的方法,所述系統(tǒng)包括具有處理單元的控制器和設(shè)備,所述控制器和設(shè)備由至少一個(gè)行動(dòng)單元和至少一個(gè)傳感器單元連接,其中所述至少一個(gè)傳感器單元收集關(guān)于所述設(shè)備的信息和輸出該信息到所述控制器,所述控制器使用所述處理單元基于接收的信息計(jì)算控制信號(hào)并且輸出所計(jì)算的控制信號(hào)到所述至少一個(gè)行動(dòng)單元。這里,所述處理單元可以包括一個(gè)或多個(gè)數(shù)字處理器。進(jìn)一步的,所述自動(dòng)化系統(tǒng)包括的解析器接收包括至少一個(gè)步驟的具有一個(gè)或多個(gè)樹形順序形式的指令,其中所述至少一個(gè)步驟包括至少一個(gè)語(yǔ)句,其中至少一個(gè)語(yǔ)句是賦值語(yǔ)句,限定將由所述控制器執(zhí)行的計(jì)算或者外圍過(guò)程,或者控制流語(yǔ)句,用于啟動(dòng)新的子順序,或者暫停語(yǔ)句,用于在該語(yǔ)句的位置處暫停執(zhí)行,而不暫停被包含在相應(yīng)步驟中的語(yǔ)句。關(guān)于這一點(diǎn),各個(gè)復(fù)制語(yǔ)句通常與將被控制的處理有關(guān),例如,代表了設(shè)置行動(dòng)單元的值的語(yǔ)句或者輸出消息到處理器操作者的語(yǔ)句?;谒邮盏闹噶?,所述解析器產(chǎn)生和執(zhí)行所述處理單元上的執(zhí)行代碼。進(jìn)而,處理單元順序地執(zhí)行每個(gè)子順序的步驟,以使得執(zhí)行每個(gè)所述步驟,直到已經(jīng)完成包含在相應(yīng)的步驟中的所有語(yǔ)句,并且其中由相同步驟啟動(dòng)的語(yǔ)句以并行或者半并行的方式執(zhí)行。樹形順序例如可以是人工提供的,僅僅是舉例,例如由自動(dòng)化系統(tǒng)的操作員人工編輯的腳本,或者可以是基于在自動(dòng)設(shè)計(jì)軟件工具中提供的操作員輸入而產(chǎn)生該樹形順序。所述解析器產(chǎn)生和執(zhí)行的所述執(zhí)行代碼使得所述處理單元順序地執(zhí)行每一子順序的步驟。這里,所述處理單元執(zhí)行每個(gè)所述步驟,直到已經(jīng)完成包含在相應(yīng)的步驟中的所有語(yǔ)句。然而,由相同步驟啟動(dòng)的語(yǔ)句由所述處理單元以并行或者半并行的方式執(zhí)行。換言之,包含在每個(gè)單獨(dú)步驟中的語(yǔ)句在處理單元上以并行或者半并行的方式執(zhí)行。這里,處理單元可以允許指令的并行處理或半并行處理,其中半并行處理基于以高速處理速率運(yùn)行
處理單元。在本發(fā)明的優(yōu)選實(shí)施例中,由所述解析器接收的指令以XML定義,例如,被定義在XML文檔中,更優(yōu)選的,以符合綱要的XML有效文檔提供的所述指令以XML綱要語(yǔ)言定義。應(yīng)當(dāng)注意,本領(lǐng)域技術(shù)人員很容易想到,許多標(biāo)準(zhǔn)化的人機(jī)可讀格式可以被用于相同的目的。這里,還優(yōu)選的是使用流控制語(yǔ)句來(lái)啟動(dòng)所述新的子順序。在優(yōu)選實(shí)施例中,設(shè)備是汽車功能測(cè)試裝備,在可選的優(yōu)選實(shí)施例中,設(shè)備是化學(xué) 反應(yīng)器系統(tǒng),以及在可選的優(yōu)選實(shí)施例中,設(shè)備是分析儀器。在優(yōu)選實(shí)施例中,至少一個(gè)傳感器單元測(cè)量轉(zhuǎn)速、力、溫度值、組分的濃度、電壓、電流、壓力、質(zhì)量、流速或者數(shù)字輸出的邏輯狀態(tài)。優(yōu)選的,所述自動(dòng)化系統(tǒng)進(jìn)一步包括連接到控制器的顯示器,其中至少其中一個(gè)所述語(yǔ)句輸出消息到顯示器上給自動(dòng)化系統(tǒng)的操作員。上述顯示器例如可以是TFT、LCD屏或者適用于傳達(dá)信息給操作員的任何其他類型的顯示器。所述自動(dòng)化系統(tǒng)可以進(jìn)一步包括電子消息系統(tǒng),其中所述至少一個(gè)語(yǔ)句可以輸出電子文本消息。上述電子消息可以例如是電子郵件、SMS或者任何其他類型的電子文本消息。在優(yōu)選實(shí)施例中,解析器產(chǎn)生執(zhí)行代碼包含產(chǎn)生中間表達(dá)代碼的中間步驟。這里,解析器將接收到的具有子順序形式的指令轉(zhuǎn)換為某些中間表達(dá)代碼,并且執(zhí)行該代碼。在可選的優(yōu)選實(shí)施例中,解析器接收的樹形順序表示解析器直接在處理單元上執(zhí)行的源代碼。在另一可選的優(yōu)選實(shí)施例中,所述解析器是線性化單元,其基于所接收的至少一個(gè)樹形順序產(chǎn)生和執(zhí)行直線化的執(zhí)行代碼。更優(yōu)選地,線性化單元從所述樹形順序產(chǎn)生引用數(shù)據(jù)棧,并且以與高速處理速率同步的方式在所述處理單元上執(zhí)行所述引用數(shù)據(jù)棧,以使得能夠半并行地處理由相同步驟啟動(dòng)的所述語(yǔ)句。此外在本發(fā)明的優(yōu)選實(shí)施例中,解析器執(zhí)行預(yù)編譯代碼。這里,解析器明確地執(zhí)行由編譯器生成的存儲(chǔ)的預(yù)編譯代碼,其中所述編譯器可以構(gòu)成上述解析器的一部分。優(yōu)選的,所述處理單元使用實(shí)時(shí)核心或?qū)崟r(shí)操作系統(tǒng)。本發(fā)明的另一方面涉及在計(jì)算機(jī)中執(zhí)行的計(jì)算機(jī)程序,其使得上述解析器根據(jù)使得系統(tǒng)自動(dòng)化的所述方法執(zhí)行執(zhí)行代碼的生成和執(zhí)行。此外,本發(fā)明的優(yōu)選實(shí)施例涉及兩個(gè)計(jì)算機(jī)程序,其中第一計(jì)算機(jī)程序以低優(yōu)先級(jí)運(yùn)行,實(shí)現(xiàn)執(zhí)行代碼的生成和外圍自動(dòng)化任務(wù),例如數(shù)據(jù)記錄、或者輸出數(shù)據(jù)到操作者顯示器,以及其中第二計(jì)算機(jī)程序在實(shí)時(shí)核心或?qū)崟r(shí)操作系統(tǒng)上運(yùn)行,執(zhí)行執(zhí)行代碼。本發(fā)明的另一方面涉及當(dāng)被存儲(chǔ)在介質(zhì)上時(shí)包括根據(jù)用于自動(dòng)化系統(tǒng)的所述方法、由所述解析器接收的具有至少一個(gè)樹形順序形式的所述指令的計(jì)算機(jī)程序。本發(fā)明的另一方面涉及計(jì)算機(jī)可讀介質(zhì),使得計(jì)算機(jī)根據(jù)用于自動(dòng)化系統(tǒng)的所述方法具有所述解析器,使得所述解析器接收具有至少一個(gè)樹形順序形式的指令并且執(zhí)行生成和執(zhí)行執(zhí)行代碼以自動(dòng)化所述系統(tǒng)。
以下參考附圖更詳細(xì)的描述本發(fā)明的優(yōu)選實(shí)施例,其僅僅是通過(guò)舉例的方式示出的。圖I 示出了直線型的腳本順序的圖解表示;圖2示出了樹形順序的圖示實(shí)例;圖3示出了直線化的樹形順序的圖示實(shí)例;圖4示出了樹形順序的XML綱要的XMLSpy圖形視圖;圖5示出了樹形順序定義的XMLSpy格子視圖(gridview);圖6示出了根據(jù)本發(fā)明第一實(shí)施例的測(cè)試汽車催化劑的模型氣體測(cè)試臺(tái)架;圖7示出了具有描述汽車測(cè)試的腳本的XMLSpy格子視圖;圖8示出了具有可調(diào)用步驟"goto_starttemperature"的XMLSpy格子視圖;圖9 不出了具有可調(diào)用步驟"calibrate_massf Iowcontroller"的 XMLSpy 格子視圖;圖10示出了具有可調(diào)用步驟"C_C0_BYA1500_calibration"的XMLSpy格子視圖。
具體實(shí)施例方式在本發(fā)明的示例性實(shí)施例中,系統(tǒng)運(yùn)營(yíng)商限定用于進(jìn)行自動(dòng)化測(cè)試臺(tái)架系統(tǒng)中的并行操作的包括多個(gè)步驟的樹形順序,其中每一個(gè)步驟可以包括多個(gè)語(yǔ)句。圖2示出了上述樹形順序的一種可能的結(jié)構(gòu),其中引用的語(yǔ)句是賦值語(yǔ)句、暫停語(yǔ)句或者控制流語(yǔ)句,其中后者被用于啟動(dòng)新的子序列。從附圖中很清楚的,子順序可以被結(jié)構(gòu)化以表示順序步驟的嵌套星座圖,其中每個(gè)新的子順序始于控制流語(yǔ)句。進(jìn)一步,可以看出樹形順序表示一種數(shù)據(jù)樹的類型。圖3示出了如何能夠直線化圖2中的子順序的一個(gè)實(shí)例,其中圖3中的標(biāo)記引用圖2的標(biāo)記。圖4示出了 XML綱要如何通過(guò)限定來(lái)sequenceType類型來(lái)提供限定上述樹形順序的便捷方式,其中sequenceType類型以if、for和和while控制流語(yǔ)句遞歸地引用自身。這里,圖5示出了利用標(biāo)準(zhǔn)商業(yè)的XML編輯器(稱為XMLSpy)來(lái)定義相應(yīng)的樹形順序??紤]到性能和成本問(wèn)題,由所限定的樹形順序合并的并行化可以以直線型的方式處理的引用數(shù)據(jù)棧的方式來(lái)執(zhí)行。出于該目的,為了確保足夠的并行度,定序器的更新速度被設(shè)置為高于控制下層處理所需的時(shí)間分辨率(采樣速率),以及被設(shè)置為對(duì)于在其他子順序暫停期間執(zhí)行的賦值語(yǔ)句和控制流語(yǔ)句來(lái)說(shuō)足夠快。在下文中,提供了樹形順序的例子(以下稱為"測(cè)試腳本"或者"腳本"),其使用在汽車催化劑的測(cè)試中,例如通過(guò)在模型氣體測(cè)試臺(tái)架中指示起燃測(cè)試。然而,因?yàn)樘峁┥鲜鰵怏w測(cè)試臺(tái)架的完全生產(chǎn)性使用的XML腳本可以輕易地保持多于17000個(gè)線程,并且出于增加可理解性的原因,因此在下文中僅僅選擇一部分腳本討論。關(guān)于這一點(diǎn),圖6示出了模型氣體測(cè)試臺(tái)架I的簡(jiǎn)化方案,模型氣體測(cè)試臺(tái)架I用于執(zhí)行配置在反應(yīng)器中的汽車催化劑樣品2的起燃測(cè)試,反應(yīng)器優(yōu)選的是被放置在管式爐3中的玻璃或者鋼反應(yīng)器。為了調(diào)節(jié)氣體在催化劑面前的溫度,熱電偶4被提供檢測(cè)面對(duì)催化劑的實(shí)際氣體溫度值并轉(zhuǎn)發(fā)該溫度值到PID控制器5,該P(yáng)ID控制器5調(diào)節(jié)到爐3的功率輸出。
在如圖6所示的模型氣體測(cè)試臺(tái)架I中,在左側(cè)配置一系列質(zhì)量流量控制器8(MFC),其中每一個(gè)質(zhì)量流量控制器8控制限定氣體9的質(zhì)量流量,其被收集和合成以產(chǎn)生模型廢氣。出于該目的,可以校準(zhǔn)或者設(shè)置質(zhì)量流量控制器8的給定值以控制質(zhì)量或者體積流量。應(yīng)當(dāng)注意,關(guān)于這一點(diǎn),氮?dú)釴2例如能夠被用作模型廢氣合成中的"平衡氣體"。在圖6中,在三向閥6中收集相應(yīng)的模型廢氣并且轉(zhuǎn)送到烘箱加熱反應(yīng)器2或者旁路管線7。這里,如圖6所示,在三向閥中收集的模型廢氣可以通過(guò)反應(yīng)器旁路管線7繞過(guò)反應(yīng)器,其用于執(zhí)行如下所述的氣體濃度校正。相應(yīng)的催化劑處理的或者旁路的模型廢氣隨后被收集在三向閥10中并且被送到廢氣分析器11,用于檢測(cè)或者測(cè)量朝向模型氣體測(cè)試臺(tái)架I的輸出口 12傳送的輸出廢氣中的不同氣體的濃度。如在現(xiàn)有技術(shù)中已知的,上述氣體分析器11可以包括多個(gè)單獨(dú)的氣體分析器用于執(zhí)行各個(gè)氣體分析任務(wù)。進(jìn)一步,為了簡(jiǎn)化以下提供的腳本的讀取,在圖6中提供了表13,其將圖6中提供的裝置和單元的名稱與它們相應(yīng)的在以下詳細(xì)描述的測(cè)試腳本中使用的名稱相關(guān)聯(lián)。關(guān)于這一點(diǎn),PV涉及工藝值或者實(shí)際值,例如分析器11確定的熱電偶4的溫度"PVthermocouple"或者CO氣體濃度分析結(jié)果"PV CO analyser"。進(jìn)一步,SP涉及分配給控制器的給定值,例如,限定PID控制器5的給定值的給定值"SP PIDcontroller"。在這種意義上講,表13將相應(yīng)的工藝和給定值與以下測(cè)試腳本實(shí)例中使用的"名稱"或者"標(biāo)簽"相關(guān)聯(lián)。此外,盡管沒有在表中提到,但是三向閥6中收集的總氣流量已經(jīng)在下文的測(cè)試腳本中被命名為"V0FEXHSPMF500"。利用如圖6所示的模型氣體測(cè)試臺(tái)架1,通過(guò)以下步驟執(zhí)行催化劑樣品2的測(cè)試I.將催化劑樣品2放置在反應(yīng)器3中。2.質(zhì)量流量控制器8中的每一個(gè)被指示提供相應(yīng)的氣體類型以及相應(yīng)的預(yù)定氣體類型的濃度,其隨后被收集在三向閥6中并且通過(guò)旁路氣體管線7被傳送到氣體分析器11,該旁路氣體管線7旁路具有催化劑樣品2的反應(yīng)器3。3.并行執(zhí)行以下兩個(gè)步驟(a)和(b):a.氣體濃度校正步驟當(dāng)氣體分析器11測(cè)量特定期望氣體類型(例如NO氣體)濃度的偏差時(shí),調(diào)節(jié)相應(yīng)的質(zhì)量流量控制器的給定值,例如"SPN0MFC",直至通過(guò)氣體分析器11檢測(cè)到期望的廢氣濃度。在這種意義上講,調(diào)節(jié)相應(yīng)的質(zhì)量流量調(diào)節(jié)器8以并行校正如下氣體的濃度i. NOii. COiii. CO2iv. O2V.烴類b.反應(yīng)器加熱步驟啟動(dòng)烘箱加熱反應(yīng)器3的加熱器并且控制達(dá)到反應(yīng)器3的期 望溫度。這里,定序器等待直到溫度已經(jīng)穩(wěn)定在期望的溫度水平。4.當(dāng)已經(jīng)在步驟3a和步驟3b成功地調(diào)節(jié)了期望的廢氣濃度和反應(yīng)器3的溫度,三向閥6和10被切換為將合成的廢氣引導(dǎo)到反應(yīng)器3中。5.接下來(lái),反應(yīng)器3中的溫度以固定的加熱斜坡上升,并且當(dāng)已經(jīng)達(dá)到預(yù)定的結(jié)束溫度時(shí)終止實(shí)驗(yàn)。在該相應(yīng)的斜坡期間,利用氣體分析器11監(jiān)測(cè)有毒成分的濃度以便評(píng)估特性,例如催化劑樣品2的性能。如上所述,可以校準(zhǔn)或者設(shè)置質(zhì)量流量控制器8以控制質(zhì)量或者體積流量。在下文的測(cè)試腳本中,質(zhì)量流量控制器8的給定值以體積ppm和體積百分比定義?;谶@些定義,計(jì)算相應(yīng)的所需流量以及在測(cè)試臺(tái)架系統(tǒng)中相應(yīng)地設(shè)置各個(gè)的質(zhì)量流量控制器8。圖7示出了 XMLSpy格子視圖的快照,包含描述汽車測(cè)試的腳本,其中順序步驟I到7的順序是順序地執(zhí)行的步驟,而callable_stepsl到16表示遠(yuǎn)距離的子順序,其可以利用"call_step "控制流語(yǔ)句來(lái)執(zhí)行,參見,例如"call_step_calibrate_massf Iowcontroller "和"call_stepgoto_starttemperature "調(diào)用順序步驟 3 使得兩個(gè)子順序并行運(yùn)行。如圖7所示,以下順序步驟I到6是順序地執(zhí)行的,其中順序步驟3調(diào)用將被并行執(zhí)行的兩個(gè)語(yǔ)句i和ii :I.消息被輸出到自動(dòng)化系統(tǒng)的控制面板。2.調(diào)用設(shè)置測(cè)試的所有啟動(dòng)狀態(tài)的步驟。3.兩個(gè)"call_st印"控制流語(yǔ)句執(zhí)行如下兩個(gè)遠(yuǎn)距離并行子順序i.調(diào)用步驟(Call_step) " goto_starttemperature"調(diào)用 callable_step 4,表示加熱烘箱加熱反應(yīng)器3和穩(wěn)定汽車催化劑入口處的溫度的子順序。該可調(diào)用步驟的細(xì)節(jié)將在下文中參考附圖8討論。ii.調(diào)用步驟(Call_step) " calibrate_massfIowcontroller "調(diào)用可調(diào)用步驟(Callable_Step)5,表示并行校準(zhǔn)若干質(zhì)量流量控制器8的子順序。以下將參考圖9討論該可調(diào)用步驟。這里,沒有詳細(xì)闡明某些特性,這是因?yàn)榭梢栽诔浞置枋龅目烧{(diào)用步驟"gotojemperature"中找到類似的對(duì)應(yīng)部分,其差異在于操作質(zhì)量流量控制器8而不是設(shè)置反應(yīng)器3的溫度。4.校準(zhǔn)的氣體被切換到反應(yīng)器并且執(zhí)行起燃測(cè)試步驟。5.執(zhí)行起燃測(cè)試步驟。6.消息被輸出到控制面板,表明測(cè)試完成。圖8示出了限定遠(yuǎn)距離子順序"goto_starttemperature"的測(cè)試腳本的所選擇的一部分,其中反應(yīng)器被加熱并且被調(diào)節(jié)到預(yù)定溫度水平。這里,以順序的方式執(zhí)行以下步驟I.標(biāo)記值"T_EXHSPNC500_"被設(shè)置為啟動(dòng)參數(shù)的值("Starttemperature")。這表示設(shè)置PID控制器5的給定值,該給定值被配置為控制通過(guò)爐面對(duì)廢氣催化劑樣品的溫度。2.消息被輸出到自動(dòng)化系統(tǒng)的控制面板。3.在60秒時(shí)間內(nèi),在每一秒,從熱電偶4收集溫度值"T_EXPPVNC500_"并且存儲(chǔ)在具有array_id=5的陣列中。4.通過(guò)while控制流語(yǔ)句,定序器被命令在每秒檢查所檢測(cè)到的溫度是否落入"Starttemperatur" +/-2° C的溫度窗口中,并且如果滿足該條件則終止while循 環(huán)。在公式 “(min (5)} T [Starttemperatur]-2)與(max (5) {T [Starttemperatur]+2),,中檢查范圍+/-2,其中"min"計(jì)算具有array_id=5的陣列中的最小值,以及"max"計(jì)算具有array_id=5的陣列中的最大值,通過(guò)"與"的功能,通過(guò)要求最小值必須大于"Starttemperatur-2 "以及最大值必須小于"Starttemperatur+2 "來(lái)實(shí)現(xiàn)窗口。在這里,在while循環(huán)條件的定義中使用字符‘{ ‘與’ },其中代表‘小于’而代表‘大于’。然而,如果沒有滿足while循環(huán)條件,則每秒收集新的檢測(cè)溫度值"T_EXPPVNC500_",并且作為先進(jìn)先出(FIFO)隊(duì)列增大具有array_id=5的陣列。當(dāng)WhiIe語(yǔ)句已經(jīng)成功地終止(即,沒有發(fā)生超時(shí)錯(cuò)誤時(shí)),面對(duì)廢氣催化劑樣品的溫度被認(rèn)為被成功地調(diào)節(jié)和穩(wěn)定。類似地,圖9示出了限定子順序"calibrate_massfIowcontroller"的測(cè)試腳本的選擇部分,如上所述,其校正由各個(gè)質(zhì)量流量控制器8中的每一個(gè)導(dǎo)致的質(zhì)量流量。這里,順序地執(zhí)行以下步驟
I. 1 calibration_ready/標(biāo)簽被設(shè)置為O,其表明相應(yīng)的校準(zhǔn)正在進(jìn)行。2.調(diào)用可調(diào)用步驟'set_valves_in_bypass;,其是指執(zhí)行用于切換三向閥6和10的子順序以使用旁路管線7旁路反應(yīng)器。3.設(shè)置校準(zhǔn)精度和穩(wěn)定時(shí)間。4.總廢氣流量被設(shè)置為"V0FEXHSPMF500_"。5.在該步驟中,并行執(zhí)行6個(gè)子順序,在此期間執(zhí)行各個(gè)質(zhì)量流量控制器8的校正并且計(jì)算滑動(dòng)平均值以減小噪聲測(cè)量信號(hào)。該相應(yīng)的滑動(dòng)平均值被用在稍后的步驟中,用于評(píng)估各個(gè)質(zhì)量流量控制器8產(chǎn)生的質(zhì)量流量是否將會(huì)適用或者需要被適應(yīng)。以下詳細(xì)地討論可調(diào)用步驟"C_C0_BYA15000_calibration"。應(yīng)當(dāng)注意,在6個(gè)子順序被放進(jìn)可調(diào)用步驟(callable_st印)用于提高測(cè)試腳本的可讀性。實(shí)際上,各個(gè)可調(diào)用步驟的內(nèi)容也可以被實(shí)現(xiàn)為父順序本身的一部分,而不使用任何可調(diào)用步驟。6. 1 calibration_ready/標(biāo)簽被設(shè)置為1,其表明相應(yīng)的校準(zhǔn)被成功地完成。圖10示出了限定遠(yuǎn)距離子順序"C_C0BYA1500_calibratiOn"的測(cè)試腳本的選擇部分,其校正由CO質(zhì)量流量控制器8導(dǎo)致的質(zhì)量流量。這里,順序地執(zhí)行以下步驟I.只有當(dāng)要求的CO濃度大于Oppm時(shí)才校準(zhǔn)CO質(zhì)量流量控制器(步驟2以及向前)。2.日志消息被輸出到測(cè)試臺(tái)架自動(dòng)化系統(tǒng)的控制面板。3.根據(jù)需要的旁路氣體濃度設(shè)置CO質(zhì)量流量控制器的給定值。4.定序器等待預(yù)定的時(shí)間,以使得氣體線路能夠被具有適當(dāng)?shù)慕M分的廢氣充滿。5.步驟5執(zhí)行實(shí)際的校準(zhǔn)。a.如果CO分析器測(cè)量的運(yùn)行時(shí)間平均值和要求的旁路濃度之間的差的絕對(duì)值大于要求的精度,則啟動(dòng)校準(zhǔn)。b. while控制流語(yǔ)句校正CO質(zhì)量流量控制器需要的CO濃度。while控制流語(yǔ)句的停止條件在每次迭代結(jié)束時(shí)檢查是否啟動(dòng)新的迭代。c.改變CO質(zhì)量流量控制器需要的濃度。d.子順序暫停預(yù)定時(shí)間,然而,盡管子順序等待,并行運(yùn)行的其他子順序繼續(xù)它們的執(zhí)行。e.通過(guò)超時(shí)限制校準(zhǔn)迭代的數(shù)目。6.日志消息被輸出到測(cè)試臺(tái)架自動(dòng)化系統(tǒng)的控制面板,告訴操作員對(duì)質(zhì)量流量控制器校正了多少。
應(yīng)當(dāng)提到的是,根據(jù)上述的腳本限定的順序可以被用于補(bǔ)償小的偏差,然而,與該順序無(wú)關(guān),可以獨(dú)立地校準(zhǔn)氣體分析器和流量控制器并且保存在測(cè)試腳本的獨(dú)立部分中。
現(xiàn)在已經(jīng)參考本發(fā)明的實(shí)施例描述了本發(fā)明,然而,對(duì)本領(lǐng)域技術(shù)人員顯而易見的是,在不背離本發(fā)明的保護(hù)范圍的情況下可以在所描述的實(shí)施例中做出多種改變。由此,本發(fā)明的保護(hù)范圍不應(yīng)該被限制于本申請(qǐng)中描述的系統(tǒng),而僅僅由權(quán)利要求的語(yǔ)言及其等價(jià)物描述的系統(tǒng)來(lái)限定本發(fā)明的保護(hù)范圍。
權(quán)利要求
1.一種自動(dòng)化系統(tǒng),包括由至少一個(gè)行動(dòng)單元和至少一個(gè)傳感器單元連接的控制器和設(shè)備,其中所述至少一個(gè)傳感器單元收集關(guān)于所述設(shè)備的信息和輸出該信息到所述控制器,所述控制器基于接收的信息計(jì)算控制信號(hào)并且輸出所述控制信號(hào)到所述至少一個(gè)行動(dòng)單元,其中所述控制器包括處理單元,用于利用所述控制器計(jì)算和輸出所述控制信號(hào), 其中,所述自動(dòng)化系統(tǒng)進(jìn)一步包括解析器,其產(chǎn)生和執(zhí)行所述處理單元上的執(zhí)行代碼,其中所述解析器接收包括至少一個(gè)步驟的具有樹形順序形式的指令,其中所述至少一個(gè)步驟包括至少一個(gè)語(yǔ)句,其中至少一個(gè)語(yǔ)句是 賦值語(yǔ)句,限定將由所述控制器執(zhí)行的計(jì)算或者外圍過(guò)程,或者 控制流語(yǔ)句,用于啟動(dòng)新的子順序,或者 暫停語(yǔ)句,用于在該語(yǔ)句的位置處暫停執(zhí)行,而不暫停被包含在相應(yīng)步驟中的語(yǔ)句, 其中所述解析器產(chǎn)生和執(zhí)行的所述執(zhí)行代碼使得所述處理單元順序地執(zhí)行每一子順 序的步驟,以使得由所述處理單元執(zhí)行每個(gè)所述步驟,直到已經(jīng)完成包含在相應(yīng)的步驟中的所有語(yǔ)句,并且其中由相同步驟啟動(dòng)的語(yǔ)句由所述處理單元以并行或者半并行的方式執(zhí)行。
2.一種使系統(tǒng)自動(dòng)化的方法,所述系統(tǒng)包括具有處理單元的控制器和設(shè)備,所述控制器和設(shè)備由至少一個(gè)行動(dòng)單元和至少一個(gè)傳感器單元連接,其中所述至少一個(gè)傳感器單元收集關(guān)于所述設(shè)備的信息和輸出該信息到所述控制器,所述控制器使用所述處理單元基于接收的信息計(jì)算控制信號(hào)并且輸出所計(jì)算的控制信號(hào)到所述至少一個(gè)行動(dòng)單元,其中 所述自動(dòng)化系統(tǒng)包括的解析器接收包括至少一個(gè)步驟的具有樹形順序形式的指令,其中所述至少一個(gè)步驟包括至少一個(gè)語(yǔ)句,其中至少一個(gè)語(yǔ)句是 賦值語(yǔ)句,限定將由所述控制器執(zhí)行的計(jì)算或者外圍過(guò)程,或者 控制流語(yǔ)句,用于啟動(dòng)新的子順序,或者 暫停語(yǔ)句,用于在該語(yǔ)句的位置處暫停執(zhí)行,而不暫停被包含在相應(yīng)步驟中的語(yǔ)句,以及 基于所接收的指令,通過(guò)使得處理單元順序地執(zhí)行每個(gè)子順序的步驟,所述解析器產(chǎn)生和執(zhí)行所述處理單元上的執(zhí)行代碼,以使得執(zhí)行每個(gè)所述步驟,直到已經(jīng)完成包含在相應(yīng)的步驟中的所有語(yǔ)句,并且其中由相同步驟啟動(dòng)的語(yǔ)句以并行或者半并行的方式執(zhí)行。
3.根據(jù)相應(yīng)的前述權(quán)利要求中的任意一項(xiàng)的系統(tǒng)或者方法,其中由所述解析器接收的指令被定義在XML文檔中。
4.根據(jù)相應(yīng)的前述權(quán)利要求中的任意一項(xiàng)的系統(tǒng)或者方法,其中所述控制流語(yǔ)句被定義為以while循環(huán)、for循環(huán)、if或者select_case構(gòu)造、subprocedure構(gòu)造的方式啟動(dòng)所述新的子順序。
5.根據(jù)相應(yīng)的前述權(quán)利要求中的任意一項(xiàng)的系統(tǒng)或者方法,其中所述設(shè)備是汽車功能測(cè)試裝備、化學(xué)反應(yīng)器系統(tǒng)或者分析儀器。
6.根據(jù)相應(yīng)的前述權(quán)利要求中的任意一項(xiàng)的系統(tǒng)或者方法,其中所述至少一個(gè)傳感器單元測(cè)量轉(zhuǎn)速、力、溫度值、組分的濃度、電壓、電流、壓力、質(zhì)量、流速或者數(shù)字輸出的邏輯狀態(tài)。
7.根據(jù)相應(yīng)的前述權(quán)利要求中的任意一項(xiàng)的系統(tǒng)或者方法,其中所述自動(dòng)化系統(tǒng)進(jìn)一步包括連接到所述控制器的顯示器,其中至少其中一個(gè)所述語(yǔ)句輸出消息到顯示器上給自動(dòng)化系統(tǒng)的操作員。
8.根據(jù)相應(yīng)的前述權(quán)利要求中的任意一項(xiàng)的系統(tǒng)或者方法,其中所述解析器產(chǎn)生執(zhí)行代碼包含產(chǎn)生中間表達(dá)代碼的中間步驟。
9.根據(jù)相應(yīng)的前述權(quán)利要求中的任意一項(xiàng)的系統(tǒng)或者方法,其中所述解析器接收的樹形順序表示解析器直接在處理單元上執(zhí)行的源代碼。
10.根據(jù)相應(yīng)的前述權(quán)利要求中的任意一項(xiàng)的系統(tǒng)或者方法,其中所述解析器是線性化單元,其基于所接收的樹形順序產(chǎn)生和執(zhí)行直線化的執(zhí)行代碼。
11.根據(jù)權(quán)利要求10的系統(tǒng)或者方法,其中所述線性化單元從所述樹形順序產(chǎn)生直線型的引用數(shù)據(jù)棧,并且以直線型的方式利用高速處理速率在所述處理單元上執(zhí)行所述直線型的引用數(shù)據(jù)棧,使得能夠半并行地處理包含在相應(yīng)的步驟中的流控制語(yǔ)句所啟動(dòng)的不同子順序包括的所述語(yǔ)句。
12.根據(jù)相應(yīng)的前述權(quán)利要求中的任意一項(xiàng)的系統(tǒng)或者方法,其中所述解析器執(zhí)行預(yù)編譯代碼。
13.根據(jù)相應(yīng)的前述權(quán)利要求中的任意一項(xiàng)的系統(tǒng)或者方法,其中所述解析器接收具有多個(gè)樹形順序形式的指令,其中每一樹形順序包括根順序以及由此所述處理單元并行地執(zhí)行所述多個(gè)樹形順序。
14.根據(jù)相應(yīng)的前述權(quán)利要求中的任意一項(xiàng)的系統(tǒng)或者方法,其中所述處理單元在實(shí)時(shí)核心或者實(shí)時(shí)操作系統(tǒng)上運(yùn)行。
15.當(dāng)在計(jì)算機(jī)中執(zhí)行時(shí)使得所述解析器執(zhí)行執(zhí)行代碼的產(chǎn)生和執(zhí)行以根據(jù)如權(quán)利要求2至14的任意一項(xiàng)的方法以自動(dòng)化所述系統(tǒng)的計(jì)算機(jī)程序。
16.當(dāng)被存儲(chǔ)在介質(zhì)上時(shí)包括由所述解析器接收的具有至少一個(gè)樹形順序形式的所述指令的計(jì)算機(jī)程序,用于根據(jù)如權(quán)利要求2至14任意一項(xiàng)所述的方法自動(dòng)化所述系統(tǒng)。
17.計(jì)算機(jī)可讀介質(zhì),使得計(jì)算機(jī)具有所述解析器,使得所述解析器接收具有至少一個(gè)樹形順序形式的指令并且執(zhí)行生成和執(zhí)行執(zhí)行代碼以自動(dòng)化所述系統(tǒng)。
全文摘要
本發(fā)明涉及一種本用于使系統(tǒng)自動(dòng)化的系統(tǒng)和方法,其中解析器基于以樹形順序形式接收的指令產(chǎn)生和執(zhí)行執(zhí)行代碼,并且其中樹形順序包括限定相應(yīng)的自動(dòng)化工序的并行操作的信息。樹形順序的定義可以基于標(biāo)準(zhǔn)化的人機(jī)可讀格式,例如XML文檔。
文檔編號(hào)G06F17/27GK102640069SQ201080054778
公開日2012年8月15日 申請(qǐng)日期2010年10月28日 優(yōu)先權(quán)日2009年12月4日
發(fā)明者B·范·塞藤 申請(qǐng)人:尤米科爾股份公司及兩合公司