專利名稱:在過程控制系統中的集成模型預測控制和最佳化的制作方法
技術領域:
本發明一般涉及過程控制系統,具體涉及在過程控制系統中最佳模型預測控制器的使用。
背景技術:
過程控制系統,諸如那些用于化學、石油或其它過程中的分布式或可伸縮的過程控制系統,典型地包括一個或多個過程控制器,它們經由模擬、數字或組合的模擬/數字總線可通信地彼此連接在一起、連接到至少一個主機或操作員工作站和連接到一個或多個現場設備。現場設備可以例如是閥門、閥門定位器、開關和發送器(諸如溫度、壓力和流速傳感器),在諸如打開或關閉閥門和測量過程參數的過程中起作用。過程控制器接收指示由現場設備作出的過程測量的信號和/或其它有關現場設備的信息,使用這個信息來實現控制例程并隨后產生控制信號,這個控制信號經由總線被發送到現場設備以控制過程的操作。來自現場設備和控制器的信息一般可由操作員工作站執行的一個或多個應用程序獲得,以便使得操作員能夠執行關于過程的任何所期望的功能,諸如查看過程的當前狀態、修改過程的操作等。
過程控制器一般被編程來執行不同的算法、子例程或用于多個不同回路(loop)的每一個的控制回路(它們都是控制例程),所述控制回路是對一個過程定義的或包括在一個過程中的,諸如流控制回路、溫度控制回路、壓力控制回路等。一般來說,每個這樣的控制回路包括一個或多個諸如模擬輸入(AI)功能塊的輸入塊,諸如比例積分微分(PID)或模糊邏輯控制功能塊的單輸出控制塊、諸如模擬輸出(AO)功能塊的單輸出塊。這些控制回路一般執行單輸入/單輸出控制,因為控制塊建立用于控制諸如閥門位置等的單過程輸入的單控制輸出。但是,在某些情況下,多個獨立操作的、單輸入/單輸出回路的使用不是很有效的,因為被控制的過程變量不僅被一個單過程輸入影響,并且實際上,每個過程輸入都可能影響許多過程輸出的狀態。在此的一個示例可能出現在例如這樣的過程中,它具有由兩個輸入管線填充并且由單輸出管線清空的箱體,每條管線由不同的閥門控制,其中,箱體的溫度、壓力和流量被控制在、或接近所期望的值。如上所述,可以利用獨立的流量控制回路、獨立的溫度控制回路和獨立的壓力控制回路來執行對箱體的流量、溫度和壓力的控制。但是,在這種情況下,在改變輸入閥門之一的設置以控制箱體內的溫度的溫度控制回路操作中,可能引起箱體內的壓力提高,這例如使得壓力回路打開出口閥門以降低壓力。這個行為可能隨后使得流量控制回路關閉輸入閥門之一,因此影響溫度并且使得溫度控制回路采取某些其它行動。從這個示例可以明白,單輸入/單輸出控制回路使得過程輸出(在這種情況下,為流量、溫度和壓力)表現出不可接受的方式行為,其中,輸出振蕩而達不到平穩的狀態條件。
模型預測控制(MPC)或其它類型的先進控制已經被用于在其中特定受控的處理變量的改變影響多個過程變量或輸出的情況下執行過程控制。自七十年代后期以來,已經報道了模型預測控制的許多成功的實現方式,并且MPC已經成為加工工業中先進的多變量控制的主要形式。而且,MPC控制已經被作為分布式控制系統分層軟件實現在分布式控制系統中。美國專利第4,616,308和4,349,869一般地說明了可以用于過程控制系統內的MPC控制器。
一般來說,MPC是多輸入/多輸出控制策略,其中測量每個過程輸入的改變對各個過程輸出的影響,并且這些測量的響應被隨后用于建立過程的控制矩陣或模型。所述處理模型或控制矩陣(它通常定義過程的穩態操作)被數學反轉,并且隨后被用于或作為多輸入/多輸出控制器以根據過程輸入的改變來控制過程輸出。在一些情況下,過程模型被表示為對于每個過程輸入的過程輸出響應曲線(典型地為階躍響應曲線),可以根據例如提供給每個過程輸入的一系列偽隨機步驟改變來建立這些曲線。這些響應曲線可以用于以公知的方式來對過程進行模型化。模型預測控制是本領域內所公知的,因此在此不說明其細節。但是,MPC在Qin,S.Joe and Thomas A.Badgwell,“AnOverview of Industrial Model Predictive Control Technology,”AIChEConsference,1996(Qin,S.Joe和Thomas A.Badgwell,“工業模型預測控制技術概覽”,美國化學工程師學會會議,1996)中被一般地說明。
已經發現,MPC是很有效的和有用的控制技術,它已經與過程優化相結合地被使用。為了優化使用MPC的過程,優化器(optimizer)最小化或最大化一個或多個由MPC例程確定的過程輸入變量,以便使得過程在最佳點運行。雖然該技術是可以被計算的,但是必須選擇例如對于改進過程的經濟運行(例如過程流量或質量)有重要影響的過程變量以從經濟角度優化過程。從財政或經濟角度出發的在最佳點運行過程典型地要求彼此相結合地控制多個過程變量,而不僅僅是單個過程變量。
已經提出利用二次規劃技術或諸如內點方法的更現代的技術進行優化,來作為提供具有MPC的動態優化的解決方案。利用這些方法,考慮到過程動態、當前約束和優化目標,確定優化方案,優化器向控制器提供在控制器輸出(即,過程的被控變量)中的變動。但是,這個方法具有很大的計算負擔,在當前的技術水平上不是實際可行的。
在使用MPC的多數情況下,在過程中可以獲得的被控變量(即MPC例程的控制輸出)的數量大于過程的控制變量的數量(即必須被控制在特定的設定點的過程變量的數量)。結果,通常存在優化和約束處理的多個自由度。理論上,為了執行這樣的優化,應當計算由定義過程的最佳操作點的過程變量、約束、極限和經濟因素表示的值。在許多情況下,這些過程變量是被約束的變量,因為它們具有與它們所屬的過程的物理特性相關的極限,在所述過程中必須保持這些變量。例如,表示箱體水平的過程變量限于實際箱體可以物理地達到的最大和最小水平。優化函數可以計算與每個受約束的或輔助的變量相關聯的成本和/或收益以工作在收益最大、成本最小的水平上等。這些輔助變量的測量可以隨后作為輸入提供到MPC例程,并且被MPC例程作為具有與由優化例程定義的輔助變量的操作點相同的設定點的控制變量。
MPC提供由僅僅用于平方控制的應用所經常要求的最佳性能,在用于平方控制(square control)的應用中,過程的控制輸入(即由控制例程產生的受控變量)的數量等于受控的過程變量(即控制器的輸入)的數量。但是在多數情況下,輔助約束變量的數量加上過程控制變量的數量大于受控變量的數量。這樣的非平方配置的MPC的實現導致不可接受的不良性能。
相信其它人已經試圖通過動態選擇與受控變量數量相同的一組控制和受約束變量、在線或在過程操作期間產生控制器以確定受控變量中的下次變化來克服這個問題。但是,這個技術計算上昂貴,因為它進行矩陣轉換,并且不能用于一些情況,例如在過程控制器中被實現為功能塊的MPC。同等重要的是,所產生的控制器的輸入和輸出的一些組合可能導致病態控制器,它導致不可接受的操作。雖然可以離線建立控制器配置使驗證和改進控制的調整,但是這個任務對于在線操作是過大的負擔,并且是在控制器級不可能實際實現的。
發明內容
集成優化和控制技術將優化程序與先進的、如模型預測控制的控制程序組合,在所述先進控制程序中,控制和輔助約束變量的數量可以大于或小于在加工廠(process plant)中的受控變量的數量。這種技術首先確定階躍響應矩陣,它定義在受控變量和每個過程變量(可以是控制變量和輔助變量)的變化之間的相關性,所述過程變量用在優化器中以確定過程的最佳操作點。在過程的操作期間,具有與受控變量的數量相同或較少數量的過程控制變量和輔助變量的子集被選擇用作MPC例程的輸入。基于該控制和輔助變量子集和受控變量的MPC控制器的增益矩陣隨后被用于建立在MPC例程操作期間所使用的MPC控制器。其后,在過程控制器的每次掃描期間,優化器例程計算控制和輔助變量全集的每個的最佳操作目標,并且向MPC例程提供用于所選擇的控制和輔助變量的每個子集的一組確定的目標操作點來作為輸入。MPC例程隨后從利用控制和輔助變量子集作為輸入的、預定的MPC矩陣確定用于控制過程的受控變量的變化。典型地,控制和輔助變量的子集被選擇作為具有階躍響應的控制和輔助變量,所述階躍響應對于受控變量之一具有最高的增益和最快的響應時間。這個技術使得具有與輸出相同數量的輸入、并且仍然允許優化例程的、要使用的MPC例程能夠利用考慮比在過程中的受控變量更多的控制和輔助變量的優化例程來確定過程的最佳操作點。這個技術是魯棒的,因為它響應于在過程中的干擾和噪聲工作來迅速控制到一個所期望的操作點,而且其計算簡單,因為它不需要在過程控制系統每次掃描期間重新計算MPC矩陣。
圖1是一個包括控制模塊的過程控制系統的方框圖,所述控制模塊具有先進的控制器功能塊,它將優化器和MPC控制器集成在一起;圖2是具有集成的優化器和MPC控制器的、圖1中的先進控制器功能塊的方框圖;
圖3是圖解建立和安裝圖2的集成優化器和MPC控制器功能塊的方式的流程圖;圖4是圖解在在線過程操作期間圖2的集成優化器和MPC控制器的操作的流程圖;圖5是圖解在執行過程控制的控制模塊中的先進控制塊的配置程序的屏幕顯示;圖6是圖解表示圖5的先進控制塊特性的對話框的配置程序的屏幕顯示;圖7是圖解選擇或指定在圖5的顯示中描述的先進控制功能塊的輸入和輸出方式的配置程序的屏幕顯示;圖8是由使得用戶或操作員能夠選擇用于建立先進控制塊的一組目標功能之一的配置程序的屏幕顯示;圖9是可以用于使得用戶能夠在建立先進控制塊期間執行測試和建立過程模型的測試屏幕的屏幕顯示;圖10是圖解指示不同控制和輔助變量對一個特定受控變量的響應的階躍響應的配置程序的屏幕顯示;圖11是圖解將圖9的控制和輔助變量之一選擇為與所述受控變量主要相關聯的方式的配置程序的屏幕顯示;圖12是圖解指示同一控制或輔助變量對不同受控變量的響應的階躍響應的配置程序的屏幕顯示;圖13是圖解復制要被復制用于不同模型的模型的階躍響應之一的方式的屏幕顯示;圖14是圖解觀察和改變階躍響應曲線的方式的屏幕顯示;圖15是圖解在先進控制塊操作期間向操作員提供信息的對話屏幕的屏幕顯示;圖16是圖解可以被提供給用戶或操作員以執行對先進控制塊的診斷的診斷屏幕的屏幕顯示。
具體實施例方式
現在參照圖1,過程控制系統10包括過程控制器11,它與數據歷史單元12和一個或多個主機工作站或計算機13(可以是任何類型的個人計算機、工作站等)可通信地連接,每個主機工作站或計算機13具有一個顯示屏幕14。控制器11也經由輸入/輸出(I/O)卡26和28連接到現場設備15-22。數據歷史單元12可以是任何所期望類型的數據收集單元,它具有任何所期望類型的用于存儲數據的存儲器和任何所期望或公知的軟件、硬件或固件,數據歷史單元12可以是與工作站13分離的(如圖1所示)、或者是工作站13之一的一部分。控制器11可以例如是由Fisher-Rosemount Systems,Inc.公司銷售的DeltaVTM控制器,它經由例如以太網連接或任何其它所期望的通信網絡29可通信地連接到主機計算機13和數據歷史單元12。通信網絡29的形式可以是局域網(LAN)、廣域網(WAN)、電信網絡等,可以利用硬連線或無線技術來實現通信網絡29。控制器11利用與例如標準4-20ma設備和/或任何智能通信協議相關聯的任何所期望硬件和軟件可通信地連接到現場設備15-22,所述智能通信協議諸如FOUNDATION現場總線(Fieldbus)協議、HART協議等。
現場設備15-22可以是任何類型的設備,諸如傳感器、閥門、發送器、定位器等,而I/O卡26和28可以是任何類型的符合所期望的通信或控制器協議的I/O設備。在圖1所示的實施例中,現場設備15-18是4-20ma標準的設備,它們通過模擬線與I/O卡26通信,而現場設備19-22是諸如Fieldbus現場設備的智能設備,它們利用Fieldbus協議通信通過數字總線與I/O卡28通信。當然,現場設備15-22可以符合任何其它所期望的標準或協議,包括未來開發的任何標準或協議。
控制器11可以是在其中具有至少一個處理器的工廠10內的許多分布式控制器之一,它實現或預見一個或多個過程控制例程,其包括存儲在其中的或否則與其相關的控制回路。控制器11也與設備15-22、主機計算機13和數據歷史單元12通信,以便以任何所期望的方式控制過程。應當注意,在此所述的任何控制例程或要素如果期望的話可以具有由不同的控制器或其它設備實現或執行的部分。同樣,要在過程控制系統10內實現的、在此所述的控制例程或要素可以采用任何形式,包括軟件、固件、硬件等。為了這個討論的目的,過程控制要素可以是過程控制系統的任何部分,包括例如存儲在任何計算機可讀介質上的例程、塊或模塊。控制例程可以是模塊或諸如子例程的控制程序的任何部分、子例程的部分(諸如代碼行)等,它可以以任何所期望的軟件格式被實現,諸如使用梯形邏輯(ladder logic)、順序功能表、功能塊表、面向對象的編程或任何其它的軟件編程語言或設計范例。同樣,控制例程可以被硬編碼到例如一個或多個EPROM、EEPROM、特定用途集成電路(ASIC)或任何其它硬件或固件元素中。進一步,可以使用任何設計工具來設計控制例程,所述設計工具包括圖形設計工具或任何其它類型的軟件/硬件/固件編程或設計工具。因此,控制器11可以被配置來以任何所期望的方式實現控制策略或控制例程。
在一個實施例中,控制器11使用通常所稱的功能塊來實現控制策略,其中,每個功能塊是整體控制例程的一部分或對象,并且(經由被稱為鏈接的通信)與其它功能塊相結合地工作以實現在過程控制系統10內的過程控制回路。功能塊一般執行輸入功能、控制功能或輸出功能之一,輸入功能諸如與發射器、傳感器或其它過程參數測量設備相關的輸入功能,控制功能諸如與執行PID、模糊邏輯等控制的控制相關的控制功能,輸出功能控制諸如閥門的一些設備的操作以在過程控制系統10內執行一些物理功能。當然,也存在混合和其它類型的功能塊。功能塊可以被存儲在控制器11中并且由控制器11執行,這種情況典型的是當這些功能塊被用于、或相關于4-20ma標準設備和諸如HART設備這樣類型的智能現場設備時,或可以被存儲在現場設備本身和由現場設備本身執行,這可以是對于Fieldbus設備的情況。雖然在此可以使用面向對象的編程范例的功能塊控制策略來提供對控制系統的描述,但是也可以利用諸如梯形邏輯、順序功能圖等的其它約定或利用任何其它期望的編程語言或范例來實現和設計控制策略或控制回路或模塊。
如圖1的擴展塊30所示,控制器11可以包括多個被圖解為例程32和34的單回路控制例程,并且可以實現一個或多個被圖解為控制回路36的先進控制塊。每個這樣的回路典型地被稱為控制模塊。單回路控制例程32和34被圖解為利用單輸入/單輸出模糊邏輯控制塊和單輸入/單輸出PID控制塊來實施單回路控制,單輸入/單輸出模糊邏輯控制塊和單輸入/單輸出PID控制塊分別連接到適當的模擬輸入(AI)和模擬輸出(AO)功能塊,模擬輸入(AI)和模擬輸出(AO)功能塊可能與諸如閥門的過程控制設備相關聯、與諸如溫度和壓力發送器的測量設備相關聯或與在過程控制系統10內的任何其它設備相關聯。先進控制回路36被圖解為包括先進控制塊38,它具有與多個AI功能塊可通信地連接的輸入和與多個AO功能塊可通信地連接的輸出,但是先進控制塊38的輸入和輸出可以被可通信地連接到任何其它的所期望功能塊或控制元件以接收其它類型的輸入和提供其它類型的控制輸出。如將進一步說明的,先進控制塊38可以是這樣的控制塊,它集成模型預測控制例程與優化器以執行過程或一部分過程的優化控制。雖然在此說明先進控制塊38包括模型預測控制(MPC)塊,但是先進控制塊38也可以包括任何其它的多輸入/多輸出控制例程或程序,諸如神經網絡建模或控制例程、多變量模糊邏輯控制例程等。可以明白,包括先進控制塊38的圖1所示的功能塊可以由控制器11執行,或者可以位于任何其它的處理設備中或可以由任何其它的處理設備執行,諸如工作站13之一或甚至現場設備19-22之一。
如圖1所示,工作站13之一包括先進控制塊產生例程40,用于建立、下載和實現先進控制塊38。雖然這個先進控制塊產生例程40可以被存儲在工作站13的一個存儲器中并且可以由其中的處理器執行,但是如果期望的話,這個例程(或其任何部分)可以另外或作為另一選擇被存儲在過程控制系統10內的任何其它設備中和由其執行。一般而言,先進控制塊產生例程40包括控制塊建立例程42,它建立在此進一步說明的先進控制塊,并且將這個先進控制塊連接到過程控制系統中;過程建模例程44,它根據由先進控制塊收集的數據建立過程或其一部分的過程模型;控制邏輯參數建立例程46,它從過程模型建立用于先進控制塊的控制邏輯參數,并且在先進控制塊中存儲或下載這些控制邏輯參數,以用于控制過程;優化器例程48,它建立優化器來用于先進控制塊。可以明白,例程42、44、46和48可以由一系列不同的例程構成,諸如第一例程,它建立一個先進控制元素,該元素具有被適配來接收過程輸出的控制輸入,并且具有被適配來向過程輸入提供控制信號的控制輸出;第二例程,它使得用戶能夠下載和可通信地連接過程控制例程(可以是任何所期望的配置例程)內的先進控制元素;第三例程,它使用先進控制元素來向每個過程輸入提供激勵波形;第四例程,它使用先進控制元素來收集反映每個過程輸出對激勵波形的響應的數據;第五例程,它選擇或使得用戶能夠選擇一組用于先進控制塊的輸入;第六例程,它建立過程模型;第七例程,它從功能模型來產生先進控制邏輯參數;第八例程,它將先進控制邏輯和——如果需要的話——過程模型放在先進控制元素內,以使得先進控制元素控制過程;第九例程,它選擇或使得用戶能夠選擇一個優化器來用于先進控制塊38中。
圖2圖解了與過程50可通信地連接的先進控制塊38的一個實施例的更詳細的方框圖,可以明白,先進控制塊38產生一組受控變量MV,這些受控變量MV被提供到其它功能塊,這些其它功能塊繼而連接到過程50的控制輸入。如圖2所示,先進控制塊38包括MPC控制器塊52、優化器54、目標轉換塊55、階躍響應模型或控制矩陣56、輸入處理/過濾塊58。MPC控制器52可以是任何標準、方形M×M(其中M可以是任何大于1的數)MPC例程或程序,它具有與輸出相同數量的輸入。MPC控制器52作為輸入接收在過程50內測量的一組N個控制和輔助變量CV和AV(它們是值的向量);一組干擾變量DV,它們是未來某個時間提供到過程50的已知或預期的改變或干擾;和一組穩態目標控制和輔助變量CVT和AVT,它們被從目標轉換塊55提供。MPC控制器52使用這些輸入來(以控制信號的形式)建立一組M個受控變量MV,并且提供這些受控變量MV信號來控制過程50。
而且,MPC控制器52在控制級計算并向輸入處理/過濾塊58提供一組分別表示控制變量CV、輔助變量AV和受控變量MV的預測值的、預測穩態控制變量CVSS和輔助變量AVSS,以及一組預測的穩態受控變量MVSS。輸入處理/過濾塊58處理控制變量、輔助變量和受控變量CVSS、AVSS、MVSS的所確定的預測穩態值,以降低噪聲和未預測的干擾對這些變量的影響。可以明白,輸入處理/過濾塊58可以包括低通濾波器或任何其它輸入處理,所述任何其它輸入處理降低噪聲、建模差錯和干擾對這些值影響,并且向優化器54提供過濾的控制變量、輔助變量和受控變量CVSSfil、AVSSfil、MVSSfil。
優化器54在這個示例中是線性規劃(LP)優化器,它使用可以從選擇塊62提供的目標函數(OF)來執行過程優化。或者,優化器54可以是二次規劃優化器,它是具有線性模型和二次目標函數的優化器。一般而言,目標功能OF將指定與多個控制變量、輔助變量和受控變量中的每個相關的成本和收益,優化器54通過最大化和最小化目標函數來為那些變量設置目標值。選擇塊62可以選擇被提供到優化器54的目標函數OF來作為一組預先存儲的目標函數64之一,目標函數64數學地表示定義過程50的最佳操作的不同方式。例如,預先存儲的目標函數64之一可以被配置來最大化工廠的收益,另一個目標函數64可以被配置來最小化短缺的特定原材料的使用,而再一個目標函數64可以被配置來最大化在過程50內制造的產品的質量。一般而言,目標函數使用與控制、輔助和受控變量的每個變動相關的成本或收益,以確定在一組可接受的點內的最佳過程操作點,所述一組可接受的點由控制變量CV的設定點值或范圍以及輔助變量和受控變量AV和MV的極限來定義。當然,任何期望的目標函數都可以被使用來取代或附加到在此描述的目標函數,包括在一定程度上優化多個所關心項目的每個的目標函數,所述所關心項目諸如原材料的使用、收益等。
為了選擇目標函數64之一,用戶或操作員可以提供要使用的目標函數64的一個指示,通過操作員或用戶終端(諸如圖1的工作站13之一)來選擇這個目標函數,所述選擇是經由輸入66被提供到選擇塊62的。響應于輸入66,選擇塊62向優化器54提供所選擇的目標函數OF。當然,用戶或操作員可以改變在過程操作期間使用的目標函數。如果期望的話,可以在用戶不提供或選擇目標函數的情況下使用默認目標函數。下面將詳細討論一個可能的默認目標函數。雖然被圖解為先進控制塊38的一部分,但是不同的目標函數可以存儲在圖1的操作終端13中,并且這些目標函數之一可以在建立或產生這個塊期間被提供給先進控制塊38。
除了目標函數OF,優化器54作為輸入還接收一組控制變量設定點(它們典型地是操作員指定的、用于過程50的控制變量CV的設定點,并且可以被操作員或其它用戶改變)和與每個控制變量CV相關聯的范圍和加權或優先級。優化器54此外還接收輔助變量的一組范圍或約束極限和一組加權或優先級、以及用于控制過程50的受控變量MV的一組極限。一般而言,輔助和受控變量的范圍(典型地基于工廠的物理特性)定義輔助受控變量的極限,而控制變量的范圍提供這樣的一個范圍,其中,控制變量可以為過程的滿意控制而操作。控制和輔助變量的加權指定在優化過程期間控制變量和輔助變量相對于彼此的相對重要程度,并且可以在一些情況下,如果一些約束被損害,則用于使得優化器54能夠產生控制目標方案。
在操作期間,優化器54可以使用線性規劃(LP)技術來執行優化。如所公知的,線性規劃是最大化或最小化被稱為目標函數的某個附加函數的數學技術,用于求解一組線性方程和不等式。如上所述,目標函數可以表達諸如成本或收益的經濟值,但是也可以表達其它目標。此外,可以明白,穩態增益矩陣定義每個可能的受控變量和控制或輔助變量對的穩態增益。換句話說,穩態增益矩陣定義對于在每個受控和干擾變量中的單位變化在每個控制和輔助變量中的穩態增益。這個穩態增益矩陣一般是N×M矩陣,其中,N是控制和輔助變量的數量,M是在優化器例程中使用的受控變量的數量。一般,N可以大于、等于或小于M,在最一般的情況下,N大于M。
使用任何公知或標準的LP算法或技術,優化器54反復確定一組目標受控變量MVT(從穩態增益矩陣確定),這組目標受控變量MVT最大化或最小化所選擇的目標函數OF,產生滿足或落入控制變量CV設定點范圍極限、輔助變量AV約束極限和受控變量MV極限內的過程操作。在一個實施例中,優化器54實際確定在受控變量中的變化,并且使用所預測的穩態控制變量、輔助變量和受控變量CVSSfil、AVSSfil、MVSSfil的指示來從它的當前操作確定在過程操作中的改變,即確定在達到目標或最佳過程操作點的過程期間的MPC控制例程的動態操作。這個動態操作是重要的,因為在從當前操作點到目標操作點的移動中必須保證不損害任何約束極限。
在一個實施例中,LP優化器54可以被設計來最小化下列形式的目標函數Q=Pt*A*ΔMV+CtΔMV其中Q=總成本/收益P=與AV和CV相關聯的收益向量C=與MV相關聯的成本向量A=增益矩陣ΔMV=用于在MV中所計算的改變的向量收益值是正數,成本值是負數,用于指示它們對目標的影響。使用這個目標函數,LP優化器54計算在受控變量MV中的變化,所述變化最小化目標函數并且同時保證控制變量CV保持在自它們的目標設定點的一個范圍中、輔助變量AV保持在它們的上和下約束極限內、受控變量MV保持在它們的上和下極限內。
在可以使用的一個優化程序中,受控變量的遞增值被用于當前時間(t),受控變量的遞增量的和被用于控制級,并且在預測級確定控制和輔助變量的遞增值而不是位置當前值,這在LP應用中是典型的。當然,LP算法可以被適當地改進來用于這個變化。在任何情況下,LP優化器54可以使用穩態模型,結果,對于它的應用需要穩態條件。利用在MPC設計中通常使用的預測級,對于自調節過程保證了未來的穩態。用于m×n輸入-輸出過程的、具有以遞增形式表達的預測級p、控制級c的一個可能的預測過程穩態方程是ΔCV(t+p)=A*ΔMV(t+c)
其中ΔCV(t+p)=Δcv1...Δcvn]]>表示在預測級(t+p)的終端的輸出中的預測改變,A=a11...a1m..........an1...anm]]>是m×n增益矩陣的過程穩態,ΔMV(t+c)=Δmv1...Δmvm]]>表示在控制級(t+c)的終端受控變量的改變。
向量ΔMV(t+c)表示由每個控制器輸出mvi進行的在控制級的改變的和,以便Δmvi=Σj=1cmvi(t+j)----i=1,2,...,m]]>所述改變應當滿足對于受控變量MV和控制變量CV的極限(在此輔助變量被當作控制變量)MVmin≤MV當前+ΔMV(t+c)≤MVmaxCVmin≤CV預測+ΔCV(t+c)≤CVmax在這種情況下,用于最大化乘積值和最小化原材料成本的目標函數可以被聯合定義為Qmin=-UCVT*ΔCV(t+p)+UMVT*ΔMV(t+c)]]>其中UCV是用于在控制變量CV過程值中的單位改變的成本向量;UMV是用于在受控變量MV過程值中的單位改變的成本向量。
代入上述的第一方程,目標函數可以以受控變量MV的形式被表達為Qmin=-UCVT*A*ΔMV(t+c)+UMVT*ΔMV(t+c)]]>為了找到最佳的解,LP算法對由這個方程定義的區域中的初始頂點計算目標函數,并在每下個步驟改進解直到該算法確定了具有目標函數的最大值(或最小值)的頂點來作為最佳解。所確定的最佳受控變量值被用作要在控制級獲得的目標受控變量MVT。
一般而言,在所準備的矩陣上運行LP算法返回三種可能的結果。首先,對于目標受控變量MVT存在唯一的解。第二,該解無限,如果每個控制和輔助變量具有上限和下限則不發生這個結果。第三,沒有解,這表示對輔助變量的界限或約束太嚴。為了處理第三種情況,可以放松整體約束以獲得一個解。基本的假設是對受控變量的極限(高/低限)不能被優化器改變。對于輔助變量的約束或極限(高/低限)也是這樣。但是,優化器可以從向指定設定點驅動控制變量CV(CV設定點控制)改變到向自設定點或在設定點周圍的范圍內的任何值驅動控制變量(CV范圍控制)。在這種情況下,允許控制變量的值位于一個范圍內而不是在特定的設定點。如果存在幾個損害它們的約束的輔助變量AV,并且從CV設定點控制向CV范圍控制的轉換不提供一個解,則也可能根據所提供的加權或優先級指定來放松或忽略輔助變量的約束。在一個實施例中,可以通過最小化允許它們中的每個損害它們各自的約束的輔助變量的均方誤差、或通過依序放棄具有最低優先級的輔助變量的約束,來確定解。
如上所述,目標函數OF可以被控制塊產生程序40選擇或設置為默認。一種建立這樣的默認設置的方法被提供如下。特別地,雖然期望提供優化能力,但是在許多情況下可能僅僅要求以仍然遵守輔助變量和受控變量的操作約束的方式來維持控制變量的設定點。對于這些應用,塊38可以被配置來唯一地作為MPC功能塊進行操作。為了提供這種使用方便,可以自動建立默認的“操作”目標函數,并且將默認的成本以及默認的輔助變量AV加權分配到其中不同的變量。這些默認量可以將所有的輔助變量AV和受控變量MV的成本設置為相等的,或向輔助變量和受控變量AV和MV提供一些其它的預定的成本分配。當選擇一個專家選項時,則用戶可以建立附加的優化選擇和定義它們的對于不同目標函數64的相關聯成本。這個專家用戶也將被允許修改默認的目標函數的默認輔助變量和控制變量AV和CV加權。
在一個實施例中,當例如對于過程配置不定義經濟因素時候,可以從MPC配置自動構造目標函數。一般,可以使用下面的公式來構造目標函數。
CDT=CT+PT*A=[C1,...,Cj,...,Cm]+[Σi=1npiai1,Σi=1npiai2,...,Σi=1npiaim]=[CD1,...,CDj,...,CDm]]]>
可以從配置設置定義變量Cj和pj。特別是,假定僅僅可以在LL(低極限)或HL(高極限)定義控制變量CV設定點,則以下面的方式來定義pj值如果設定點定義在LL或選擇了最小化,則pj=-1;如果設定點定義在HL或選擇了最大化,則pj=1。
假定對于輔助變量AV沒有輸入配置信息,則對于所有輔助變量AV,pj=0。類似地,對于受控變量MV,Cj值依賴于是否定義了優選的受控變量目標MVT。在定義了優選的受控變量目標MVT時如果MVT在HL(高極限)或選擇了最大化,則Cj=1,如果MVT在LL(低極限)或選擇了最小化,則Cj=-1,如果不定義MVT,則Cj=0。
如果期望的話,則可以調整與MPC控制器52相結合的優化器54的使用的選擇,以便因此提供優化程度。為了實施該功能,可以通過向由MPC控制器52和優化器54確定的在受控變量MV中的改變施加不同的加權來警告由控制器52使用的受控變量MV的改變。受控變量MV的這種加權組合在此指的是有效MV(MVeff)。這個有效MVeff可以被確定為ΔMVeff=ΔMVmpc(1+α/S)+ΔMVopt(1-α)0<α<1其中,S是任意或試探性地選擇的。典型地,S將大于1,并且在10的范圍內。
在此,對于α=1,優化器對在產生時設置的有效輸出作出貢獻。對于α=0,控制器僅提供MPC動態控制。當然,在0和1之間的范圍提供了優化器和MPC控制的不同貢獻。
上述的默認目標函數可以被用于在其不同的可能操作模式期間建立優化器的操作。特別是,當控制變量CV的數量與受控變量MV的數量相匹配時,只要輔助變量AV和受控變量MV在它們的極限內,則對于默認設置的所期望的行為是維持控制變量CV設定點。確定預測輔助變量或受控變量將損害它們的極限,則控制變量工作設定點將在其范圍內被改變以防止這些極限被損害。如果在這種情況下優化器54不能找到滿足輔助變量和受控變量極限并且將控制變量保持在它們的范圍中的解,則控制變量將被保持在它們的范圍內,并且允許輔助變量從它們的約束極限偏移。在尋找最佳解時,那些損害極限的輔助變量AV將被等同看待,并且它們的平均極限偏移被最小化。
為了實現這個行為,將自動設置由目標函數使用的默認成本/收益,以便如果范圍被定義為允許偏移低于設定點則為控制變量CV分配收益1,如果范圍被定義為允許偏移高于設定點則為控制變量CV分配收益-1。在極限內的輔助變量AV將被分配收益0,而受控變量MV將被分配成本0。
當控制變量CV的數量小于受控變量MV的數量時,則可以使用額外的自由度來處理與所配置的受控變量MV最后所處位置相關聯的要求。在此,只要輔助變量和受控變量在它們的極限內,則控制變量設定點(如果定義了任何控制變量CV)將被維持。受控變量從所配置的最后所處位置的平均偏移將被最小化。如果預測輔助變量和受控變量中的一個或多個將損害它的極限,則控制變量工作設定點將在它們的范圍內被改變以防止這些極限被損害。在這個條件下,如果存在多個解,則用于控制的那個解將使受控變量從所配置的最后所處位置的平均偏移最小化。
當優化器54不能找到滿足輔助和受控變量的極限并且將控制變量保持在它們的范圍內的解(即不存在解)時,則控制變量將被保持在范圍中并且允許輔助變量偏移它們的約束極限。在尋找最佳解時,那些損害極限的輔助變量將被等同地對待,并且它們的平均極限偏移被最小化。為了實現這個行為,將自動設置由目標函數使用的默認成本/收益,以便如果所述范圍被定義為允許偏移低于設定點,則控制變量將被分配收益1,如果所述范圍被定義為允許偏移大于設定點,則控制變量將被分配收益-1。輔助變量將被分配收益1或-1,而受控變量將被分配成本0.1。
在任何情況下,在操作后,優化器54向目標轉換塊55提供一組最佳或目標受控變量MVT,目標轉換塊55使用穩態增益矩陣來確定目標穩態控制和從目標受控變量MVT導致的受控變量。這個轉換是可以直接計算的,因為穩態增益矩陣定義在受控變量和控制和輔助變量之間的交互,因此可以被用于從所定義的目標(穩態)受控變量MVT唯一地確定目標受控變量和輔助變量CVT和AVT。
一旦被確定。則至少N個目標控制變量和輔助變量CVT和AVT的子集被作為輸入提供給MPC控制器52,MPC控制器52如上所述使用這些目標值CVT和AVT來確定一組新的穩態受控變量(在控制級)MVSS,它向在控制級的終端的目標值CVT和AVT驅動當前的控制和受控變量CV和AV。當然,如所公知的,MPC控制器逐步改變受控變量,以試圖達到這些變量MVSS的穩態值,它們在理論上將是由優化器54確定的目標受控變量MVT。因為優化器54和MPC控制器52在每個過程掃描期間如上所述地操作,因此受控變量的目標值MVT可以逐個掃描地改變,結果是,MPC控制器可能從未實際達到這些目標受控變量MVT組中的任何特定的一個,尤其是在存在噪聲、未預期的干擾、在過程50中的改變等的時候。但是,優化器54總是驅動控制器52向最佳解移動受控變量MV。
如所公知的,MPC控制器52包括控制預測過程模型70,它可以是N×(M+D)的階躍響應矩陣(其中N是控制變量CV的數量加上輔助變量V的數量,M是受控變量MV的數量,D是干擾變量DV的數量)。控制預測過程模型70在輸出72上產生對每個控制變量和輔助變量CV和AV的預先計算的預測,向量求和器74從控制和輔助變量CV和AV的實際測量值減去對當前時間的這些預測值,以在輸入76上產生差錯或校正向量。
控制預測過程模型70隨后使用N×(M+D)的階躍響應矩陣,根據被提供給控制預測過程模型70的其它輸入的干擾變量和受控變量來在控制級預測每個控制變量和輔助變量CV和AV的未來控制參數。控制預測過程模型70也向輸入處理/過濾塊58提供控制變量和輔助變量CVSS和AVSS的預測穩態值。
控制目標塊80利用先前對于塊38建立的軌道過濾器82來確定對于由目標轉換塊55提供的N個目標控制變量和輔助變量CVT和AVT的每個的控制目標向量。特別是,軌道過濾器提供單位向量,它限定將控制變量和輔助變量隨著時間驅動到它們的目標值的方式。控制目標塊80使用這個單位向量和目標變量CVT和AVT來產生每個控制和輔助變量的動態控制目標向量,它定義了在由控制級時間限定的時間期間在目標變量CVT和AVT中的改變。向量求和器84然后從動態控制向量中為每個控制變量和輔助變量CV和AV減去未來控制參數向量,以為每個控制變量和輔助變量CV和AV定義一個差錯向量。每個控制和輔助變量CV和AV的未來差錯向量隨后被提供給MPC算法,MPC算法運行選擇受控變量MV步驟,這些步驟在控制級最小化例如最小均方誤差。當然,MPC算法或控制器使用M×M過程模型或控制矩陣,M×M過程模型或控制矩陣是由N個輸入到MPC控制器52的控制和輔助變量和由MPC控制器52輸出的M個受控變量之間的關系發展而成的。
更具體地說,對于優化器適用的MPC算法具有兩個主目標。首先,MPC算法試圖在操作約束內以最小的MV移動來最小化CV控制差錯,第二,試圖獲得由優化器建立的最佳穩態MV值和從最佳穩態MV值直接計算的目標CV值。
為了滿足這些目標,可以擴展原始的未約束MPC算法以將MV目標包括到最小二乘解中。對于這個MPC控制器的目標函數是minΔMV(k){||Γy[CV(k)-R(k)]||2+||ΓuΔMV(k)||2+||Γo[ΣΔMV(k)-ΔMVT]||2}]]>其中CV(k)是受控輸出p-階躍在前預測向量;R(k)是p-階躍在前參考軌道(設定點)向量;ΔMV(k)是c-階躍在前遞增控制移動向量;Гy=diag{Гy1,…,Гyp}是關于受控輸出差錯的懲罰矩陣;Гu=diag{Гu1,…,Гuc}是關于控制移動的懲罰矩陣;p是預測級(階躍的數量);c是控制級(階躍的數量);Гo是對在控制級上的控制器輸出移動的和相對于由優化器限定的MV的目標最佳改變的誤差的懲罰。為了表示的簡單,目標函數對單輸入/單輸出(SISO)控制示出。
可以明白,前兩項是未約束的MPC控制器的目標函數,而第三項建立使得控制器輸出移動的和等于最佳目標的附加條件。換句話說,前兩項建立控制器動態操作目標,而第三項建立穩態優化目標。
可以注意到,與未約束的MPC控制器類似,對于這個控制器的一般的解可以表達為ΔMV(k)=(SuTΓTΓSu+ΓuTΓu)-1SuTΓTΓEp+1(k)=KompcEp+1(k)]]>其中ΔMV(k)是在時間k在MPC控制器輸出中的改變;Kompc是優化的MPC控制器增益;Su是由SISO模型的大小為pxc的階躍響應,和具有m個受控輸入和n個控制輸出的多輸入/多輸出MIMO模型的大小為p*nxc*m的階躍響應建立的過程動態矩陣。
對于優化的MPC,動態矩陣被擴展到大小對于SISO模型為(p+1)×m,對于MIMO模型為(p+m)*n×c*m,以便容納MV差錯。Ep+1(k)是在預測級的CV差錯向量和在控制級的控制器輸出移動的和相對于MV的目標最佳改變的誤差。矩陣Г組合矩陣Гy和Гo,并且對于SISO控制器是大小為(p+1)、對于多變量控制器大小為[n(p+m)]的方陣。上標T表示轉置矩陣。
已經確定,因為優化器54根據所有的控制和輔助變量CV和AV來優化以確定定義唯一最佳操作點的一個受控變量MVT的目標集,所以MPC控制器52僅使用在它的控制矩陣中的控制和輔助變量CV和AV的子集來操作以實際產生由其輸出的受控變量MV,因為當控制器52向與其相關聯的目標驅動所選擇的控制和輔助變量CV和AV的子集的時候,控制和輔助變量的全集的其它變量也將在它們的目標值。結果,已經確定具有M×M控制矩陣的方形(M×M)MPC控制器可以與使用矩形(N×M)過程模型的優化器一起使用,以執行過程優化。這使得標準的MPC控制技術能夠被用于標準的優化技術而不必以維護人員的近似和在控制器中的與這樣的轉換技術相關聯的風險來反轉非方陣。
在一個實施例中,當MPC控制器是正方的時,即受控變量MV的數量等于控制變量CV的數量時,則可以如下通過CV值的改變有效地獲得受控變量MV的目標ΔCV=A*ΔMVTΔMVT-MV的最佳目標改變ΔCV-用于獲得最佳MV的CV改變。CV改變是通過管理CV設定點來實現的。
在操作中,優化器54在每次掃描中建立和更新MPC未約束控制器的穩態目標。因此,MPC控制器52執行未約束算法。因為目標CVT和AVT是以考慮約束的方式設置的,只要存在可行的解,控制器就工作在約束極限內。因此,優化是MPC控制器的一個組成部分。
圖3和4說明了圖解用于執行集成模型預測控制和優化的步驟的流程圖90。流程圖90一般被劃分成兩個部分90a(圖3)和90b(圖4),圖解在過程操作之前發生的功能(90a)和在過程操作期間、如在過程操作的每次掃描期間發生的功能(90b)。在過程操作之前,操作員或工程師采取多個步驟來建立先進控制塊38,其中包括集成的MPC控制器和優化器。特別是,在塊92,可以選擇先進的控制摸板來用作先進控制塊38。模板可以被存儲在用戶接口13上的配置應用內的庫中并從其復制,并且可以包括MPC控制器例程52和優化器54的一般的數學和邏輯功能,而沒有特定的MPC、過程模型和穩態增益或控制矩陣以及特定的目標函數。這個先進控制模板可以被放置到具有其它塊以及其它類型的功能塊的模塊中,所述其它塊諸如被配置用來與在過程50的中設備通信的輸入和輸出塊,功能塊諸如控制塊,包括PID、神經網絡和模糊邏輯控制塊。可以理解,在一個實施例中,在一個模塊中的塊是在面向對象的編程范例中的各個對象,其輸入輸出彼此連接以執行在塊之間的通信。在操作期間,運行模塊的處理器在不同的時間利用對塊的輸入依序運行每個塊,以產生塊的輸出,這些輸出隨后被提供給由塊之間的特定通信鏈路定義的其它塊的輸入。
在塊94,操作員定義要用在塊38中使用的特定受控變量、控制變量、受約束的變量和干擾變量。如果期望的話,在諸如圖1的程序40的配置程序中,用戶可以查看控制模板,選擇要命名和配置的輸入和輸出,利用在配置環境中的任何標準瀏覽器進行瀏覽以找到控制系統內的實際的輸入和輸出,選擇這些實際控制變量作為控制模板的輸入和輸出控制變量。圖5圖解了由配置例程建立的屏幕顯示,其描述了控制模塊DEB_MPC,它包括多個相互連接的功能塊,其中包括多個AI(模擬輸入)和AO(模擬輸出)功能塊、多個PID控制功能塊和一個作為先進功能塊的MPC-PRO功能塊。在圖5顯示左側的樹結構圖解了在DEB_MPC模塊中的功能塊,包括例如塊1、C4_AI、C4_DGEN等。
可以明白,用戶可以通過在MPC-PRO功能塊的輸入和輸出與其它功能塊的輸入和輸出之間劃線來指定MPC-PRO功能塊的輸入和輸出。或者,用戶可以選擇MPC-PRO塊以獲得對MPC-PRO塊的特性的訪問。如圖6所示,可以顯示的對話框以使得用戶能夠查看MPC-PRO塊的特性。如圖6所示,可以對每個控制、受控、干擾和約束(輔助)變量提供不同的標簽以提供這些變量的組織結構,這尤其是當諸如20或更多的變量與先進控制塊38相關聯時是必要的。在對于特定類型的變量的標簽內,可以提供說明、低和高限(約束)以及路徑名稱。另外,用戶或操作員可以指定在變量失敗情況下要做什么,諸如不采取行動、使用變量的模擬值來取代測量值或接受手工輸入。而且,操作員可以指定是否最小化或最大化這個變量以執行與這個變量相關聯的優化和優先級或加權和收益值。這些字段當未使用默認目標函數的時候必須被填入。當然,用戶可以利用在對話框右側的適當按鍵增加、移動、修改或刪除信息或變量。
用戶可以通過選擇變量來指定或改變一個或多個變量的信息。在這種情況下,可以向用戶顯示對話框,諸如圖7的用于REFLUX FLOW受控變量的對話框。用戶可以改變在其不同框內的信息并可以通過瀏覽來指定信息,諸如變量的路徑名稱(即它的輸入或輸出連接)。利用圖7的屏幕,用戶可以選擇一個內部瀏覽按鈕或外部瀏覽按鈕來在其內定位了MPC-PRO塊的模塊內或在模塊外部進行瀏覽。當然,如果期望的話,操作員或用戶可以手動提供地址、路徑名稱、標簽名稱等,如果期望的話定義到和自先進控制塊的輸入和輸出連接。
在選擇了至先進控制功能塊的輸入和輸出之后,用戶可以定義與控制變量相關聯的設定點,與控制變量、輔助變量和受控變量相關聯的范圍或極限,以及與每個控制、輔助和受控變量相關聯的加權。當然,一些這種信息、諸如約束極限或范圍可能在這些變量在過程控制系統配置環境中被選擇或發現時已經與這些變量相關聯。如果期望的話,在圖3的塊96,操作員可以通過為每個受控變量、控制變量和輔助變量指定單位成本和/或收益來配置一個或多個用在優化器中的目標函數。當然,此處,操作員可以選擇使用如上所述的默認目標函數。圖8是由配置例程提供的屏幕顯示,所述配置例程使得用戶或操作員能夠選擇一組目標函數之一來用于建立先進控制塊。可以明白,用戶可以使用諸如由圖8提供的屏幕顯示來選擇一組先前存儲的目標函數,在此被圖解為標準目標函數和目標函數2-5。
在輸入(控制、輔助和干擾變量)被命名和結合到先進控制模板并且加權、極限和設定點與其相關聯之后,在圖3的塊98,先進的控制模板被下載到過程內所選擇的控制器中,作為用于控制的功能塊。控制塊的一般特性和配置這個控制塊的方式被說明于美國專利第6,445,963號,題目為“IntegratedAdvanced Control Blocks in Process Control Systems(過程控制系統中的集成先進控制塊)”,這個專利被轉讓給本授讓人,在此通過引用將其明確地并入。雖然這個專利說明了在過程控制系統中建立MPC控制器的特性,并且沒有討論優化器可以連接到該控制器的方式,但是應該明白,其連接和配置控制器的一般步驟可以用于在此說明的控制塊38,并且模板包括所有在此對于控制塊38所討論的所有邏輯元素,而不僅僅是在該專利中所述的那些。
在任何情況下,在先進控制模板被下載到控制器中之后,操作員可以在塊100選擇運行控制模板的測試階段以產生要用于MPC控制器算法中的階躍響應矩陣和過程模型。如在上述的專利中所述,在測試階段,在先進控制塊38中的控制邏輯向過程提供一系列偽隨機波形作為受控變量,并且觀察在控制和輔助變量(它們被MPC控制器本質上當作控制變量)中的改變。如果期望的話,可以通過圖1的歷史單元12來收集受控變量和干擾變量以及控制和輔助變量,操作員可以建立配置程序40(圖1)以從歷史單元12獲得該數據,并以任何方式對該數據實施傾向化,以獲得或確定階躍響應矩陣,每個階躍響應標識控制或輔助變量之一對于受控變量和控制變量之一(并且僅為一個)的單位改變在時間上的響應。這個單位改變一般是階躍改變,但是可以是另一種類型的改變,諸如沖擊或傾斜改變。另一方面,如果期望的話,控制塊38可以響應于當將偽隨機波形施加到過程50時收集的數據而產生階躍響應矩陣,并且隨后將波形提供到被建立和安裝先進控制塊38的操作員或用戶使用的操作員接口13。
圖9圖解了可以由測試例程提供的屏幕顯示,以向操作員提供收集和傾向的數據的圖表,它們使得操作員能夠指導階躍響應曲線、以及因此在先進控制塊的MPC控制器中使用的過程模型或控制矩陣的建立。特別是,圖表區域101響應于測試波形而繪制多個輸入或輸出的數據或其它數據(由操作員先前指定)。條形圖區域102提供了一個用于每個傾向數據變量的條形圖,為每個傾向的變量圖解變量的名稱、條形圖形式的變量當前值、適用的設定點(由在條形圖上的大三角指示)、適用的極限(由在條形圖上的小三角指示)。其它顯示區域圖解了關于先進控制塊的其它內容,諸如塊的目標和實際模式(104)和到穩態的配置時間(106)。
在建立先進控制塊的過程模型之前,操作員可以從趨勢圖表101圖形地指定要使用的數據。特別是,操作員可以指定圖表102的開始點和結束點108和110作為要用于建立階躍響應的數據。在這個區域中的數據可以以諸如綠色的不同的顏色加陰影,以便可視地指示所選擇的數據。同樣,操作員可以指定在這個加陰影區域中要排除的區域(作為無代表性、噪聲或不期望的干擾的影響等)。這個區域被圖解在線112和114之間,并且可以被加例如紅色陰影,以便指示這個數據不包括在階躍響應的產生中。當然,用戶可以包括或排除任何所期望的數據,并且可以對于多個趨勢圖表的每個執行這些功能(圖9圖解了在這種情況下可以獲得的8個趨勢圖表),不同的趨勢圖表與例如不同的受控變量、控制變量、輔助變量等相關聯。
為了建立一組階躍響應,操作員可以選擇在圖9的屏幕顯示上的建模按鍵116,并且建立例程將使用從趨勢圖表所選擇的數據來產生一組階躍響應,每個階躍響應表示控制或輔助變量之一對受控或干擾變量之一的響應。這個產生過程是公知的,在此不再進一步詳細說明。
在建立階躍響應矩陣之后,在控制和輔助變量的數量超過受控變量的情況下,階躍響應矩陣被用于選擇控制和輔助變量的子集,它將被用于MPC算法來作為要在MPC控制器52內反轉和使用的M×M過程模型或控制矩陣。這個選擇過程可以由操作員手動或由在例如可以訪問階躍響應矩陣的用戶接口13內的例程自動執行。一般而言,控制和輔助變量之中的單獨一個將被標識為與受控變量中的單獨一個最接近地相關聯。因此,控制和輔助變量(對過程控制器的輸入)之中的單獨和唯一的(即不同的)一個將與不同的受控變量(過程控制器的輸出)的每個相關聯,以便MPC算法可以基于由M×M組階躍響應建立的過程模型。
在提供配對中使用試探手段的一個實施例中,自動例程或操作員將選擇一個M個(M等于受控變量的數量)控制和輔助變量的集合,以試圖選擇單個控制或輔助變量并且將這兩個變量配對,其中,該單個控制或輔助變量具有最大增益和對在特定受控變量中的單位改變的最快響應時間的一定組合。當然,在一些情況下,特定的控制或輔助變量可以具有對多個受控變量的大增益和快響應時間。在此,那個控制或輔助變量可以與任何相關聯的受控變量配對,并且可以事實上與不產生最大增益和最塊響應時間的受控變量配對,因為,總的來說,引起較少增益或較慢響應時間的受控變量在可接受的程度上可能不會影響任何其它控制或輔助變量。因此,一方面是受控變量和另一方面是控制或輔助變量的對被選擇來在總體的意義上將受控變量與表示對受控變量的最響應的控制變量和輔助變量的子集配對。而且,如果所有的控制變量都未被選作M個控制和輔助變量的子集之一,并且MPC控制器因此不接收所有的控制變量作為其輸入,也沒有關系,因為由優化器選擇的控制和輔助變量目標的集合表示過程的操作點,在該點上未選擇的控制(以及未選擇的輔助)變量在它們的設定點或在它們的所提供的操作范圍內。
當然,因為一方面可能存在幾十或甚至幾百個控制和輔助變量,而另一方面也可能存在幾十或甚至幾百個受控變量,因此至少從可視的角度上會難于選擇具有對每個不同的受控變量的最佳響應的控制變量和輔助變量的集合。為了克服這個問題,在操作員接口13內的先進控制塊產生例程40可以包括或向用戶或操作員提供一組屏幕顯示以幫助或使得操作員能夠對控制和輔助變量進行適當的選擇,所述控制和輔助變量應當作為要在操作期間用于MPC控制器52中的控制和輔助變量的子集。
因此,在圖3所示的塊120,操作員可以被提供一個屏幕,操作員在其中可以查看每個控制和輔助變量對一個特定或選擇的受控變量的響應。這樣的屏幕被圖解在圖10中,其中描述多個控制和輔助(標注為約束)變量的每個對被稱為TOP_DRAW的受控變量的響應。操作員可以一次一個地滾動通過受控變量,并且查看每個控制和輔助變量對每個不同的受控變量的階躍響應,并且在過程期間選擇對那個受控變量響應最佳的一個控制或輔助變量。典型地,操作員將試圖選擇具有最高穩態增益和對受控變量的最快響應時間的最佳組合的控制或受控變量。如圖11所示,可以使用對話框選擇控制和輔助變量之一作為對于這個受控變量最為重要的。如果期望的話,如圖11所示,可以以諸如紅色的不同顏色來加亮控制和輔助變量中所選擇的一個,而先前選擇的變量(即已經為其它受控變量選擇的控制和輔助變量)可以以諸如黃色的不同顏色加亮。在這個實施例中,控制例程40當然將先前選擇的控制和輔助變量存儲在存儲器中,可以查看以保證操作員不會選擇與兩個不同的受控變量相關聯的相同的控制或輔助變量。如果用戶或操作員選擇已經為另一個受控變量選擇的控制或輔助變量,例程40可以向用戶或操作員提供差錯消息,通告用戶或操作員先前選擇的控制或輔助變量的選擇。以這種方式,例程40防止對兩個或更多的不同受控變量選擇相同的控制或輔助變量。
如圖12所示,操作員或用戶也可以選擇查看對于不同的受控變量和干擾變量的每個的不同階躍響應。圖11圖解TOP_END_POINT對先前被建立的先進控制塊指定的受控和干擾變量的每個的階躍響應。當然,操作員可以使用圖12的屏幕來選擇與控制變量TOP_END_POINT相關聯的受控變量之一。
可以明白,圖10-12的顯示屏幕使得操作員可以觀察和選擇將用作MPC控制算法輸入的M個控制和輔助變量的子集,所述MPC控制算法當存在多個這些變量時特別有用。當然,可以根據一些預先建立的標準或選擇例程來自動地或電子地選擇在塊74確定的控制和約束變量的集合,所述預先建立的標準或選擇例程可以根據增益響應和時間延遲的一定組合來選擇要使用的輸入變量,所述增益響應和時間延遲是從被控制的約束變量或受控變量的階躍響應確定的。
在另一個實施例中,自動選擇過程可以通過根據矩陣的條件數量來選擇輸入/輸出矩陣、例如通過最小化條件數量達到所期望的程度和通過隨后從控制矩陣得到控制器配置,來首先確定控制矩陣。
在這個示例中,對于過程增益矩陣,可以確定矩陣ATA的條件數量A來測試矩陣的可控性。較小的條件數量一般表示較好的可控性,而較高的條件數量則表示較差的可控性和在動態控制操作期間的更多的控制步驟或移動。對于定義可控性的可接受程度沒有嚴格的標準,因此,可以使用條件數量來作為各種潛在控制矩陣的相對比較和作為對病態矩陣的測試。公知的是,病態矩陣的條件數量接近無限。數學上,病態條件發生在共線的過程變量的情況下——即由于在控制矩陣中的共線行或列。因此,影響條件數量或可控性的主要因素是矩陣行和列之間的交叉相關。在控制矩陣中仔細地選擇輸入-輸出變量可以減少條件問題。實際上,如果控制矩陣的條件數量在幾百(如500)或更高,則會有影響。對于這樣的矩陣,控制器受控變量變動異常過大。
如上所述,控制矩陣解決動態控制問題。而LP優化器解決穩態優化問題,并且控制矩陣需要是方形輸入-輸出矩陣,即使MPC控制器塊可能具有不同數量的MV(包括AV)和CV也是這樣。為了開始選擇用于產生控制器的控制矩陣的輸入和輸出,所有的可獲得MV被典型地包括或選擇為控制器輸出。在選擇輸出(MV)之后,必須以這樣的方式選擇作為動態控制矩陣的部分的過程輸出變量(即CV和AV),以產生非病態的控制方陣。
現在討論在控制矩陣內自動或手動選擇CV和AV的一種方法,可以明白,也可以使用其它方法。
步驟1-選擇CV,如果可能的話直到CV的數量等于MV的數量(即控制器輸出的數量)。在CV比MV多的情況下,可以根據諸如優先級、增益或相位響應、用戶輸入等的任何所期望的標準來以任何順序選擇CV。如果CV的可能的總數量等于MV的數量,則進行到步驟4以測試結果產生的對于可接受性的控制方陣條件數量。如果CV的數量小于MV的數量,可以如在步驟2所述來選擇AV。如果不存在定義的CV,則選擇相對于MV具有最大增益的AV,并且進行到步驟2。
步驟2-逐個計算每個可能AV的條件數量,所述每個可能AV被加到由先前選擇的CV和AV定義的、已經選擇的控制矩陣。可以明白,由所選擇的CV定義的矩陣將包括每個所選擇的CV和AV的行,對于每個先前選擇的MV定義那個CV或AV的穩態增益。
步驟3-選擇在步驟2確定的、導致所產生的矩陣的最小條件數量的AV,并且將這個矩陣定義為加上所選擇的AV的在先的矩陣。如果現在MV的數量等于所選擇的CV的數量加上所選擇的AV的數量(即,如果矩陣現在是方陣),則進行到步驟4。否則返回步驟2。
步驟4-計算所建立的控制方陣Ac的條件數量。如果期望的話,則可以使用矩陣Ac的條件數量計算而非矩陣AcTAc,因為這些不同矩陣的條件數量相關為另一個的平方根。
步驟5-如果在步驟4計算的條件數量是可以接受的,則通過選擇相對于一個具體的MV具有最大增益的CV或AV直到配對完成來將每個CV和所選擇的AV與一個MV相關聯。在此,選擇過程結束。如果另一方面,條件數量大于最小可接受條件數量,則消除加到控制矩陣的最后一個AV/CV,并且執行步驟6的回繞(wrap-around)程序。
步驟6-對每個所選擇的MV執行回繞程序,一次一個,并且計算從每個回繞程序產生的矩陣的條件數量。實質上,通過依序將對每個不同MV的統一響應替換所消除的AV(或CV)來執行回繞程序。該統一響應在矩陣行中的位置之一是統一的,在其它位置為0。實質上,每個特定的MV在這種情況下被用做輸入和輸出來取代AV,以形成良好條件的控制方陣。作為示例,對于一個4×4矩陣,組合1000、0100、0010、0001被放在增益矩陣Ac的消除AV線的行中。
步驟7-在對每個MV執行回繞程序之后,選擇產生最小條件數量的組合。如果沒有改進,則保留原始矩陣。此處,通過選擇相對于一個具體MV具有最大增益的CV或AV來將每個所選擇的CV和所選擇的AV與MV相關聯,其中除了用于控制本身的MV(即回繞的MV)之外。
當然,由這個程序定義的控制矩陣以及所產生的條件數量可以被提交給用戶,而用戶可以接受或拒絕所定義的控制矩陣來用于產生控制器。
應當注意,在上述自動程序中,至多僅僅一個MV被選擇用于控制本身(即回繞)以改進可控性。在人工程序中,回繞MV的數量可以是任意的。當在控制器配置中沒有相應的輸出變量選擇時,所選擇用于控制本身的MV是顯然的,而且,如果MV的數量大于CV加上AV的總數量,則可以使用更多的MV作為用于控制的回繞。以這種方式,最后,一個控制方陣仍然被提供到將每個MV作為輸出的控制器。可以明白,執行和使用回繞的過程表示選擇用于控制矩陣的CV和AV的數量可以小于由控制器控制的MV的數量,其差是作為控制矩陣輸入的MV回繞的數量。而且,這個回繞程序可以用于CV加AV少于MV的過程。
當然,上面利用穩態增益來計算條件數量,因此控制矩陣定義對穩態必要的可控性。過程動態(停滯時間,拖后等)和模型不確定性也具有對動態可控性的影響,并且可以通過改變過程變量(如控制和輔助變量)的優先級來考慮這些影響,這可以規定由于它們對動態控制的影響而使得它們包括在控制矩陣中。
還可能利用打算改進穩態和動態可控性的其它試探程序。這樣的程序典型地具有多個試探標準,可能一些彼此矛盾,它們被應用于幾個階段來發展控制矩陣,因此選擇提供控制矩陣的一些改進的、適當的控制器輸入的集合。在一個這樣的試探程序中,CV和AV將根據MV基于最高增益關系來分組。然后,對于每個MV組,將選擇具有最快動態和重要增益的一個過程輸出。這個選擇過程可以考慮到置信區間,并且使CV相對于AV優先(所有其余的相同)。過程模型產生例程將隨后使用在MPV控制產生期間對每個組選擇的參數。因為對每個MV僅僅選擇一個參數,因此響應矩陣是方形的并且可以被反轉。
在任何情況下,在選擇輸入到MPC控制器的M(或更少)個控制和輔助變量的子集之后,圖3的塊124從確定的控制方陣產生用于圖2的MPC控制算法86的過程模型或控制器。公知的是,這個控制器產生步驟是計算密集的程序。塊126隨后向控制塊38下載這個MPC過程模型(固有地包括控制矩陣)或控制器和——如果需要的話——階躍響應和穩態階躍響應增益矩陣,并且這個數據被并入控制塊38中用于操作。此時,控制塊38準備好用于在過程50中的在線操作。
如果期望的話,可以用不同于這些階躍響應的產生方式來重新配置或提供過程階躍響應。例如,可以從不同的模型復制階躍響應,并提供到例如圖10-12的屏幕以指定某個控制或輔助變量對受控變量或干擾變量的階躍響應。圖13圖解了一個屏幕顯示,其中,用戶可以選擇和復制特定過程或模型的階躍響應之一、然后刪除或向不同的模型粘貼那個相同的響應、并且將那個階躍響應粘貼到新的模型,以便因此使得用戶能夠手動指定階躍響應模型。當然,作為這個過程的一部分,用戶可以刪除如上所述自動產生的一個或多個階躍響應模型。
圖14圖解了一個屏幕顯示,其中,用戶可以查看階躍響應中更特殊的一個(在此為TOP_END_POINT對TOP_DRAW的階躍響應)。這個階躍響應的參數,諸如穩態增益、響應時間、一階時間常數和均方誤差,被圖解在顯示上以使用戶或操作員易于引用。如果期望的話,用戶可以通過指定不同的參數來查看和改變這個階躍響應的特性,所述不同的參數如果期望的話諸如為不同的增益或時間常數。如果用戶指定了不同的增益或其它參數,階躍響應模型可以被以數學方式自動再生以具有這個新參數或參數集。當用戶知道階躍響應的參數并且需要改變所產生的階躍響應以匹配或符合這些參數時,這個操作是有用的。
現在參見圖4,在圖解在線操作的過程50的同時,圖解了在利用圖3的流程圖90a建立的先進控制塊38的每個操作周期或掃描周期內執行的一般步驟。在塊150,MPC控制器52(圖2)接收和處理控制和輔助變量CV和AV的測量值。特別是,控制預測過程模型處理CV、AV和DV測量或輸入以產生未來控制參數向量,以及預測的穩態控制和輔助變量CVSS和AVSS。
接著,在塊152,輸入處理/過濾塊58(圖2)處理或過濾由MPC控制器52發展的、預測的控制變量和輔助變量和受控變量CVSS、AVSS和MVSS,并且將這些過濾的值提供給優化器54。在塊154,優化器54執行標準LP技術以確定M個受控變量目標MVT的集合,所述M個受控變量目標MVT最大化或最小化所選擇的或默認的目標函數,同時不損害輔助變量和受控變量的任何極限,并且同時將控制變量保持在它們的指定設定點或在這些變量的指定范圍內。一般而言,優化器54將通過強制使每個控制變量和輔助變量符合它們的極限來計算目標受控變量解MVT。如上所述,在許多情況下,存在這樣的解,其中,每個控制變量在它們的設定點(它可能起初被作為控制變量的上限),而同時每個輔助變量保持在它們各自的約束極限內。如果是這樣,則優化器54僅僅需要輸出產生目標函數的最佳結果的確定的受控變量目標MVT。
但是在一些情況下,由于對一些或全部輔助變量或受控變量的嚴格極限,不可能找到這樣的操作點,在該點所有的控制變量都在它們的設定點,并且所有的輔助變量都在它們各自的約束極限內,因為這樣的解不存在。在這些情況下,如上所述,優化器54可以允許控制變量在它們的指定設定點范圍內放松以便找到這樣的一個操作點,在此輔助變量操作在它們各自的極限內。如果在這種情況下不存在解,則優化器可以將作為解內的一個極限的輔助變量約束極限之一刪除,并且在忽略所刪除的輔助變量約束極限的情況下,代之以確定最佳過程操作點。在此,優化器根據對每個控制和輔助變量提供的各個加權來選擇將作為約束極限刪除那個輔助或控制變量(例如首先刪除最低加權或最高優先級)。優化器54根據其提供的加權或優先級繼續刪除輔助變量或控制變量直到找到一個目標受控變量MVT解,其中滿足了所有控制變量的設定點范圍和剩余的、更高優先級輔助變量的極限。
接著,在塊156,目標轉換塊55(圖2)使用穩態階躍響應增益矩陣來從受控變量MVT的目標值來確定控制和輔助變量CVT和AVT的目標值,并且向MPC控制器52提供這些值的所選擇的N(其中N等于或小于M)子集來作為目標輸入。在塊158,MPC控制器52使用從中導出的控制矩陣或邏輯以作為如上所述的未約束MPC控制器進行操作,以確定這些目標值的未來CV和AV向量,并且執行與未來控制參數向量的向量相減以產生未來差錯向量。MPC算法以公知的方式來根據從M×M階躍響應得到的過程模型來確定穩態受控變量MVSS,并將這些MVSS值提供到輸入處理/過濾塊58(圖2)。在塊160,MPC算法也確定要輸出到過程50的MV階躍,并且以任何合適的方式將這些階躍的第一個輸出到過程50。
在操作期間,在例如接口13之一中運行的一個或多個監控應用可以從先進控制塊或與其可通信地連接的其它功能塊,直接或通過歷史單元12申請信息,并且向用戶或操作員提供一個或多個查看或診斷屏幕,用于查看先進控制塊的操作狀態。功能塊技術的特征有在控制和輸出功能塊上的級聯輸入(CAS_IN)和遠程級聯輸入(RCAS_IN)以及對應的反算輸出(BKCAL_OUT和RCAS_OUT)。有可能利用這些連接器來將監管優化的MPC控制策略附加在現有的控制策略的頂部,并且可以利用一個或多個觀察屏幕或顯示來查看這個監管控制策略。同樣,如果期望的話,也可以從一個策略來修改優化的MPC控制器的目標。
圖15是一個示例屏幕顯示,它可以通過一個或多個這樣的查看應用來產生,它圖解了優化器對話屏,這個對話屏向涉及先進控制塊操作的操作員在其操作期間提供信息。特別是,過程的輸入(受控變量MV)和輸出(控制和輔助變量CV和AV)被分別圖解。對于這些變量的每個,屏幕顯示圖解了變量的名稱(描述符)、所測量的當前值、適用的設定點、由優化器計算的目標值、變量改變的單位和單位值、當前變量值的指示。對于輸出變量,還指明這個變量是否是用于MPC控制器中的所選擇變量之一、由MPC控制器確定的這個變量的預測值、這個變量的預先設置的優先級的指示。這個屏幕使得操作員能夠查看先進控制塊的當前操作狀態以查看先進控制塊執行控制的方式。而且,用戶可以配置用于遠程設定點能力的一些被控的參數,以便外部應用可以設置用于流量協調的操作目標。
圖16是一個屏幕顯示,它可以通過診斷應用來產生,它圖解了一個診斷屏幕,這個診斷屏幕可以被提供給用戶或操作員以執行對先進控制塊的診斷。特別是,圖16的診斷屏幕分別圖解了控制和約束(輔助)變量、受控變量和干擾變量。對于每個,變量的名稱或描述符與(在第一列中的)是否對這個變量存在差錯或警告條件的指示一起被提供。可以利用例如綠色檢查標記或紅色“x”或任何其它所期望的方式來圖形地圖解這樣的差錯或警告。對這些變量的每個還指示一個值和狀態。對于受控變量,圖解了這些信號的Back_Cal(反算或反饋)變量的值或狀態。可以明白,這個屏幕可以用于通過向操作員提供確定控制系統內問題所需要的信息來執行對先進控制塊的診斷。當然,可以將其它類型的屏幕或信息提供給操作員,以使得操作員查看先進控制塊的操作和執行對先進控制塊以及實現其的模塊的診斷。
雖然在此將先進控制塊圖解為具有定位于同一功能塊內、并且因此在與MPC控制器相同的設備中被執行的優化器,但是還可能在獨立的設備中實現優化器。特別是,優化器可以位于諸如用戶工作站13之一的不同的設備中,并且在控制器的每個執行或掃描期間與結合圖2所述的MPC控制器通信,以便計算和向MPC控制器提供目標受控變量(MVT)或由其確定的控制和輔助變量(CV和AV)的子集。當然,諸如公知的OPC接口的特殊接口可以被用于在控制器和其中具有MPC控制器的功能塊和實現或執行優化器的工作站或其它計算機之間的通信接口。如參照圖2所述的實施例中那樣,優化器和MPC控制器必須在每次掃描周期內仍然彼此通信以執行集成的優化MPC控制。但是,在這種情況下,也可以使用其它所期望類型的優化器,諸如可能已經存在于過程控制環境中的、公知的或標準的實時優化器。如果優化問題是非線性的并且解要求非線性規劃技術。則也可以有益地使用這個特征。
雖然在此說明的先進控制塊和其它塊或例程已經被描述為與Fieldbus和4-20ma標準設備相結合地被使用,當然也可以利用任何其它的過程控制通信協議或編程環境來實現它們,并且它們也可以用于任何其它類型的設備、功能塊或控制器。雖然最好以軟件實現在此說明的先進控制塊和相關聯的產生和測試例程,但是也可以以硬件、固件等來實現它們,并且可以用與過程控制系統相關聯的任何其它處理器來執行它們。因此,如果期望的話,在此說明的例程40可以被實現在標準多用途CPU中或在諸如ASIC的特殊設計的硬件或固件上。當以軟件實現時,所述軟件可以被存儲在任何計算機可讀的存儲器中,諸如磁盤、激光盤、光盤或其它存儲介質中,在計算機或處理器的RAM或ROM中,等等。同樣,這個軟件可以經由任何已知的或所期望的提供方法被提供到用戶或過程控制系統,所述提供方法包括例如在計算機可讀盤或其它可傳送的計算機存儲機構上、或者通過諸如電話線、因特網等的通信信道調制(這被看作與經由可傳送的存儲介質提供軟件相同或可交換)。
因此,雖然已經參照特定的示例說明了本發明,并且所述示例旨在僅僅說明性的而非對本發明的限定,但是對本領域的技術人員顯然的是,在不脫離本發明的精神和范圍的情況下,可以對所公開的實施例進行改變、增加或刪除。
權利要求
1.一種過程控制系統,用于控制過程,包括多輸入/多輸出控制器,用于在過程控制系統的每個操作周期內產生多個控制輸出,它們被配置用于在過程控制系統的每個操作周期內根據來自過程的多個測量的輸入和根據一組提供給該多輸入/多輸出控制器的目標值來控制過程;優化器,用于在過程控制系統的每個操作周期內產生由該多輸入/多輸出控制器使用的該組目標值。
2.按照權利要求1所述的過程控制系統,其中,所述優化器是二次規劃優化器。
3.按照權利要求1所述的過程控制系統,其中,所述優化器是線性規劃優化器。
4.按照權利要求3所述的過程控制系統,其中,所述多輸入/多輸出控制器是模型預測控制器。
5.按照權利要求1所述的過程控制系統,其中,所述多輸入/多輸出控制器是模型預測控制器。
6.按照權利要求1所述的過程控制系統,其中,所述多輸入/多輸出控制器是由具有相同輸入輸出數的控制方陣產生的。
7.按照權利要求1所述的過程控制系統,其中,所述優化器包括目標函數,它定義與過程的至少一個輸入相關聯的和與過程的至少一個輸出相關聯的成本或收益。
8.按照權利要求1所述的過程控制系統,其中,所述優化器根據過程的控制和輔助輸出的預測穩態值來產生所述目標值組。
9.按照權利要求1所述的過程控制系統,其中,所述優化器是包括目標函數的線性或二次規劃優化器,該優化器用于最小化或最大化目標函數,并且將一組控制變量保持在預定的設定點、將一組輔助變量保持在一組預定的輔助變量約束極限內、將一組受控變量保持在一組預定的受控變量約束極限內,如果沒有解,則使至少一個控制變量保持在預定的設定點范圍內。
10.按照權利要求1所述的過程控制系統,其中,所述優化器是包括目標函數的線性或二次規劃優化器,該優化器用于最小化或最大化目標函數并且將一組控制變量保持在預定的設定點極限內、將一組輔助變量保持在一組預定的輔助變量極限內、將一組受控變量保持在一組預定的受控變量極限內,如果沒有解,則使至少一個輔助變量的極限被損害。
11.按照權利要求10所述的過程控制系統,其中,所述優化器用于為一組輔助變量存儲一組優先級編號,以及其中,該優化器使用所述優先級編號來確定要被損害的至少一個輔助變量極限。
12.一種過程控制系統,用于控制一個過程,包括優化器,用于根據過程控制變量和輔助變量預測值的第一數量和根據過程受控變量當前值的第二數量來確定過程的優化操作點;多輸入/多輸出控制器,用于根據過程的控制變量和輔助變量預測值的第一數量的預定子集來產生受控控制信號的第二數量,以控制過程的受控變量,其中,該預定子集在數量上不同于過程控制變量和輔助變量的第一數量。
13.按照權利要求12所述的過程控制系統,其中,所述預定子集小于或等于受控變量的第二數量。
14.按照權利要求12所述的過程控制系統,其中,所述多輸入/多輸出控制器是包括控制方陣的模型預測控制器。
15.按照權利要求14所述的過程控制系統,其中,所述控制方陣包括作為輸入的過程控制變量和輔助變量,和作為輸出的過程受控變量,并且包括與受控變量數量相等的多個控制變量和輔助變量。
16.按照權利要求14所述的過程控制系統,其中,所述控制方陣包括作為輸入的過程控制變量和輔助變量,和作為輸出的過程受控變量,并且包括數量少于受控變量的多個控制變量和輔助變量,并具有至少一個作為受控變量輸出和控制變量輸入的受控變量。
17.按照權利要求16所述的過程控制系統,其中,被分配作為受控變量輸出和控制變量輸入的至少一個受控變量的數量等于受控變量總數和用作控制矩陣的控制變量輸入的控制變量和輔助變量的數量之差。
18.按照權利要求16所述的過程控制系統,其中,所述至少一個用作受控變量輸出和控制變量輸入的受控變量包括具有統一增益的階躍響應。
19.按照權利要求14所述的過程控制系統,其中,所述模型預測控制器被產生用來最小化在預測級上的均方控制誤差和最小化在控制級上受控變量的變動。
20.按照權利要求19所述的過程控制系統,其中,所述模型預測控制器被產生用來獲得與受控變量的最佳目標改變相等的在控制級上的受控變量變動的和。
21.按照權利要求19所述的過程控制系統,其中,可以任意調整最小化預測級均方誤差和最小化受控變量變動的滿意度。
22.按照權利要求19所述的過程控制系統,其中,可以任意調整獲得受控變量的最佳目標改變的滿意度。
23.按照權利要求12所述的過程控制系統,其中,所述優化器是線性或二次規劃優化器。
24.按照權利要求23所述的過程控制系統,其中,所述優化器對于控制變量和輔助變量的第一數量的預定子集產生一組目標值,并且所述多輸入/多輸出控制器將該第一數量的控制變量和輔助變量的預定子集的目標值與第一數量的控制變量和輔助變量的預定子集的測量值相組合,以產生受控控制信號。
25.按照權利要求24所述的過程控制系統,其中,所述多輸入/多輸出控制器產生一組預測控制和輔助變量和一組預測受控變量,以及其中,所述優化器使用所述預測控制和輔助變量組和所述預測受控變量組來產生控制和輔助變量的第一數量的預定子集的目標值組。
26.按照權利要求25所述的過程控制系統,其中,還包括響應矩陣,它定義第一數量的控制和輔助變量的每個對第二數量的受控變量中的每個的反應,其中,所述優化器產生一組定義最佳操作點的目標受控變量值,并且所述優化器使用該響應矩陣來從所述目標受控變量值組確定第一數量的控制和輔助變量的預定子集的目標值。
27.按照權利要求26所述的過程控制系統,其中,所述優化器用于產生最大化或最小化目標函數的一組目標受控變量值,并且同時將每個控制變量保持在預定的設定點、將每個輔助變量和受控變量保持在預定的約束極限內。
28.按照權利要求27所述的過程控制系統,其中,所述優化器用于產生最大化或最小化目標函數的一組目標受控變量值,并且當不存在使每個控制變量保持在預定的設定點并且使每個輔助變量和受控變量保持在預定的約束極限內的解時,將每個控制變量保持在預定的設定點極限內、將每個輔助變量和受控變量保持在約束極限內。
29.按照權利要求28所述的過程控制系統,其中,所述優化器用于產生最大化或最小化目標函數的一組目標受控變量值,并且當不存在使每個控制變量保持在預定設定點極限內并且使每個輔助變量和受控變量保持在預定的約束極限內的解時,將每個控制變量保持在預定設定點極限內、將受控變量保持在預定約束極限內,同時允許一個或多個輔助變量根據與輔助變量相關聯的優先級來損害預定的約束極限。
30.一種控制過程的方法,所述過程具有多個受控變量和多個能夠被受控變量中的改變影響的控制變量和輔助變量,其中,所述多個受控變量在數量上不同于所述多個控制變量和輔助變量,所述方法包括選擇多個控制和輔助變量的子集,用于執行過程控制;利用所選擇的多個控制變量和輔助變量和多個受控變量的子集來建立控制矩陣;從該控制矩陣產生控制器,將所選擇的多個控制變量和輔助變量的子集作為輸入,將所述多個受控變量作為輸出;通過根據多個受控變量和多個控制變量和輔助變量選擇過程操作點來最小化或最大化目標函數來執行過程優化,所述過程操作點由用于所選擇的多個控制變量和輔助變量的子集的一組目標值定義;利用從所述控制矩陣產生的控制器執行多輸入/多輸出控制技術,以從多個控制變量和輔助變量的所選擇子集的目標值和多個控制變量和輔助變量的所選擇子集的測量值產生一組受控變量值;使用所產生的受控變量值組來控制過程。
31.按照權利要求30所述的方法,其中,所述執行過程優化和執行多輸入/多輸出控制技術的步驟在過程的連續掃描期間執行。
32.按照權利要求30所述的方法,其中,所述選擇多個控制變量和輔助變量的子集和建立控制矩陣的步驟在過程在線操作之前執行。
33.按照權利要求30所述的方法,其中,所述選擇多個控制變量和輔助變量子集的步驟包括根據控制矩陣的最小條件數量來選擇在多個控制變量和輔助變量子集內的每個控制變量和輔助變量。
34.按照權利要求30所述的方法,其中,所述選擇多個控制變量和輔助變量子集的步驟包括根據控制變量和輔助變量之一對受控變量之一的增益響應來選擇對受控變量之一最響應的控制變量或輔助變量。
35.按照權利要求30所述的方法,其中,所述選擇多個控制變量和輔助變量子集的步驟包括根據控制變量和輔助變量之一對受控變量之一的響應時間來選擇對受控變量之一最響應的控制變量和輔助變量。
36.按照權利要求30所述的方法,其中,所述選擇多個控制變量和輔助變量子集的步驟包括根據控制變量和輔助變量之一對受控變量之一的增益響應和響應時間的組合來選擇對受控變量之一最響應的控制變量和輔助變量。
37.按照權利要求30所述的方法,其中,所述執行多輸入/多輸出過程控制技術的步驟包括執行模型預測控制技術的步驟。
38.按照權利要求37所述的方法,其中,所述執行過程優化的步驟包括執行線性或二次規劃技術的步驟。
39.按照權利要求30所述的方法,其中,所述選擇多個控制變量和輔助變量子集的步驟包括對多個受控變量的每個選擇單獨的和不同的一個控制變量和輔助變量的步驟。
40.一種過程控制元素,用作在處理器上實現的過程控制例程的一部分,以利用多個受控參數來控制過程的多個控制和輔助參數,所述過程控制元素包括計算機可讀介質;存儲在該計算機可讀介質上的功能塊,用于在處理器上被執行,以在每個控制掃描周期內實現過程的多輸入/多輸出控制,所述功能塊包括目標函數,根據多個控制和輔助參數來定義優化標準;優化器例程,在每個控制掃描周期內,使用該目標函數來產生對控制和輔助參數的一組最佳目標值;控制矩陣,它將多個控制和輔助參數的預定子集與多個受控參數相關聯;多輸入/多輸出控制例程,它利用用于多個控制和輔助變量子集的控制矩陣和目標值在每個控制掃描周期內產生用于多個受控參數的每個的控制信號,其中,所述控制信號被確定來將多個控制和輔助參數的子集驅動到控制和輔助參數子集的最佳目標值。
41.按照權利要求40所述的過程控制元素,其中,所述優化器例程包括線性或二次規劃例程。
42.按照權利要求41所述的過程控制元素,其中,所述多輸入/多輸出控制例程包括模型預測控制例程。
43.按照權利要求42所述的過程控制元素,其中,所述控制矩陣是方陣,并且使用第一數量的控制和輔助參數和第一數量的受控參數,以及其中,所述目標函數根據第二數量的控制和輔助參數來定義優化標準,其中,該第二數量不同于所述第一數量。
44.按照權利要求40所述的過程控制元素,其中,所述目標函數是用戶在過程操作期間可選擇的。
45.按照權利要求40所述的過程控制元素,其中,還包括多個不同的可能目標函數,它們可以被選擇作為由優化器例程使用的目標函數。
46.按照權利要求40所述的過程控制元素,其中,所述功能塊包括一個存儲器,用于存儲一組控制參數設定點和一組輔助和受控參數極限,以及其中,所述優化器例程被配置來確定受控參數的最佳目標值組,它導致控制參數在控制參數設定點、控制和輔助參數在控制和輔助參數極限內、目標函數被最小化或最大化。
47.按照權利要求46所述的過程控制元素,其中,所述存儲器還存儲一組控制參數設定點極限,所述優化器例程用于產生受控參數的最佳目標值組,它們最大化或最小化目標函數,并且當不存在將控制參數保持在控制參數設定點、并且將輔助和受控參數保持在輔助和受控參數極限內的解時,使每個控制參數保持在控制參數設定點極限內、使每個輔助參數和受控參數保持在控制和輔助參數極限內。
48.按照權利要求40所述的過程控制元素,其中,所述存儲器還存儲一組輔助參數優先級指示,以及所述優化器例程用于產生一組目標受控參數,它們最大化或最小化目標函數,并且當不存在將每個控制參數保持在控制參數設定點極限內并且將每個輔助參數和受控參數保持在輔助和受控參數極限內的解時,將每個控制參數保持在控制參數設定點極限內,同時允許一個或多個輔助參數根據輔助參數的優先級指示來損害輔助參數極限。
49.按照權利要求40所述的過程控制元素,其中,所述控制例程用于產生對每個控制參數、輔助參數和受控參數的預測值,并且向優化器例程提供所述對每個控制參數、輔助參數和受控參數的預測值,以及其中,所述優化器例程用于使用對控制參數、輔助參數和受控參數的預測值來確定控制和輔助參數子集的目標值。
50.一種執行過程控制的方法,所述過程具有由第二數量的受控變量控制的第一數量的控制變量和輔助變量,所述方法包括確定一個階躍響應矩陣,它定義每個控制和輔助變量對在每個受控變量中的改變的響應;選擇控制和輔助變量的子集,所述子集具有與受控變量相同數量或比其少的控制和輔助變量;從控制變量和輔助變量和受控變量的所選擇子集的響應矩陣中的響應建立控制方陣;在每個過程掃描期間獲得對控制和輔助變量的每個所選擇子集的測量;為控制和輔助變量的每個所選擇子集計算最佳操作目標值;利用控制和輔助變量的每個所選擇子集的目標值、對控制和輔助變量的所選擇子集的測量和控制矩陣來執行多輸入/多輸出控制例程,以產生一組受控參數信號;使用受控參數信號來控制過程。
51.按照權利要求50所述的執行過程控制的方法,其中,所述選擇子集和建立控制方陣的步驟在過程的在線操作之前執行。
52.按照權利要求50所述的執行過程控制的方法,其中,所述選擇控制和輔助變量子集的步驟包括選擇對受控變量之一最響應的控制變量或輔助變量。
53.按照權利要求50所述的執行過程控制的方法,其中,所述選擇控制和輔助變量子集的步驟包括根據控制和輔助變量之一對受控變量之一的增益響應來選擇對受控變量之一最響應的控制變量或輔助變量。
54.按照權利要求50所述的執行過程控制的方法,其中,所述選擇控制和輔助變量子集的步驟包括根據控制和輔助變量之一對受控變量之一的響應時間來選擇對受控變量之一最響應的控制變量或輔助變量。
55.按照權利要求50所述的執行過程控制的方法,其中,所述選擇控制和輔助變量的子集步驟包括根據控制和輔助變量之一對受控變量之一的增益響應和響應時間的組合來選擇對受控變量之一最響應的控制變量或輔助變量。
56.按照權利要求50所述的執行過程控制的方法,其中,所述選擇控制和輔助變量子集的步驟包括根據響應矩陣自動選擇控制和輔助變量的子集。
57.按照權利要求50所述的執行過程控制的方法,其中,所述選擇控制和輔助變量子集的步驟包括確定包括控制和輔助變量所選擇子集的矩陣的條件數量。
58.按照權利要求50所述的執行過程控制的方法,其中,所述建立控制方陣的步驟包括使用過程的控制和輔助變量作為輸入,使用過程的受控變量作為輸出,并且選擇少于受控變量數量的控制和輔助變量,以及選擇至少一個受控變量作為控制變量輸入。
59.按照權利要求50所述的執行過程控制的方法,其中,所述執行多輸入/多輸出控制例程的步驟包括執行模型預測控制技術的步驟。
60.按照權利要求59所述的執行過程控制的方法,其中,所述計算最佳操作目標值的步驟包括執行線性或二次規劃技術。
61.按照權利要60所述的執行過程控制的方法,其中,所述執行線性規劃技術的步驟包括使用一個目標函數,它根據第一數量的控制和輔助變量和第二數量的受控變量來定義過程的最佳操作。
62.按照權利要求61所述的執行過程控制的方法,還包括選擇目標函數的預定組之一來作為在線性規劃技術中使用的目標函數。
全文摘要
本發明涉及集成優化和控制技術,在控制和輔助變量數可以大于受控變量數的加工廠內,將如線性或二次規劃的優化程序與如模型預測控制的先進控制集成。該技術首先確定定義在優化時使用的受控變量和每個過程變量中的變化之間相關性的階躍響應矩陣。隨后選擇控制和輔助變量的子集用作在過程操作期間執行控制的模型預測控制例程的輸入,并產生模型預測控制例程使用的M×M控制方陣。其后,在過程控制器每次掃描期間,優化器例程計算控制和輔助變量每個全集的最佳操作目標,并向模型預測控制例程提供作為輸入的、所選擇的控制和輔助變量子集的目標操作點。模型預測控制例程由各控制和輔助變量子集的目標值和測量值和M×M控制矩陣確定受控變量的變化。
文檔編號G06F19/00GK1490690SQ03158498
公開日2004年4月21日 申請日期2003年9月11日 優先權日2002年9月11日
發明者威廉·K·沃杰茨尼斯, 特倫斯·L·布萊文斯, 馬克·尼克松, L 布萊文斯, 威廉 K 沃杰茨尼斯, 尼克松 申請人:費舍-柔斯芒特系統股份有限公司