本發(fā)明屬于DCS設計領域,特別涉及一種通用DCS機柜通道表自動生成和分配方法。
背景技術:
火力發(fā)電廠中設計過程中,將I/O卡件分配到DCS機柜的工作內容非常繁雜,傳統(tǒng)的設計方式是根據IO測點清單的信號類型統(tǒng)計需要的不同卡件數量,按照DCS廠家布置要求制作布置圖,不同的DCS廠家的布置要求往往不一樣,因此設計人員制作的布置圖和測點通道表往往也不一樣,再將I/O測點分配通道表時,非常容易出錯,并且工作量非常大。在此過程中存在幾個難題,首先,由于DCS的廠家眾多、機柜布置方式不同,因此布置圖無法做到通用;其次,機柜布置的卡件數量眾多,制作空白通道表需要根據卡件類型和通道數在EXCEL中一行一行的完成,人工完成工作量大、繁瑣、出錯的概率高,一個工程往往有幾十上百個機柜,需要大量的人力;再次,在分配I/O點的通道時需要根據信號的信號類型分配到對應信號類型的未分配通道上,而且需要考慮冗余設備的測點出于安全和冗余的要求需要分配到不同的卡件的通道上,需要人工判斷和挑選,費事費力,工作非常繁瑣和容易出錯。完成一個300MW的工程往往需要3到5個工程技術人員30天左右才能完成,而且質量完全取決于人工的細致程度。隨著人力成本的增加和工程進度的要求越來越高,要求快速準確的完成DCS機柜卡件的布置和通道的分配。
技術實現要素:
本發(fā)明要解決的技術問題是提供一種分配DCS所用I/O卡件的方法,它能夠準確、自動地完成卡件的布置,使得到的通道表準確,能夠更好的指導生產。為解決上述技術問題,本發(fā)明所采取的技術方案是:一種分配DCS所用I/O卡件的方法,是采用EXCELVBA技術,包括以下步驟:a、將測點清單輸入計算機系統(tǒng),所述測點清單中包含各測點的測點編號、設備名稱、測點名稱、信號類型和分組號;b、輸入所選用的I/O卡件類型及卡件配置點數,根據每種類型卡件數量=每種類型測點的點數/卡件配置點數,計算出每種類型卡件的數量;c、輸入機柜I/O卡件容量參數;然后采用順序布置或平均分配的原則將I/O卡件布置到各機柜中并生成每臺機柜內I/O卡件的EXCEL布置圖和卡件清單;所述順序布置原則是指所有類型的卡件按照AI卡件、AO卡件、RTD卡件、TC卡件、DI卡件、DO卡件的排列順序,將各卡件由上到下由左到右排列到EXCEL布置圖中;d、然后根據每個機柜卡件總數=各種類型的卡件數量之和的公式計算出每個機柜中布置的不同類型I/O卡件的數量,并根據配置的卡件點數和順序生成未分配測點的I/O卡件通道表;e、對測點進行分組,分組方法是選取測點清單中的關鍵詞作為分組字符內容,將測點清單中關鍵詞相同的測點分成一組形成分組表,然后在測點清單中查找分組表中的關鍵詞,得到測點的分組號,填入第1步的測點清單中的分組號列;f、根據測點清單,將設備名稱和信號類型相同的測點按照設備名稱字符和信號類型字符順序依次分配到未分配測點的I/O卡件通道表的不同卡件的通道上,得到I/O卡件通道分配表。本發(fā)明進一步改進在于:設備名稱字符不相同的測點分配在不同的I/O卡件上,分配過程中還要使每臺機柜中的卡件具有冗余量,分配過程中先分配有分組號的測點,沒有分組號的剩余的測點作為公用部分分配到空余通道的卡件上或公用系統(tǒng)機柜中。本發(fā)明進一步改進在于:將I/O卡件布置到機柜中的具體方法是:輸入機柜I/O卡件容量參數,所述機柜I/O卡件容量參數包括布卡面數、線槽列數、線槽參數,根據每槽卡件數參數=線槽列數×線槽參數的公式、按照順序布置和平均分配的原則將所有卡件分配到機柜中;所述EXCEL布置圖的橫坐標為線槽號,豎坐標為卡件號,內容為卡件類型。本發(fā)明進一步改進在于:步驟d中生成未分配測點的I/O卡件通道表的方法是:對EXCEL布置圖按照上到下由左到右順序掃描配置的卡件,根據卡件的點數、采用EXCELVBA編程生成通道分配表,所述EXCELVBA編程是采用雙循環(huán)編程實現,外循環(huán)為卡槽總數,內循環(huán)為根據卡件類型得到的卡件配置點數,得到未分配測點的I/O卡件通道表。采用上述技術方案所產生的有益效果在于:本發(fā)整合了不同的DCS廠家的機柜布置和出線方式,是一種適用于大多數DCS廠家機柜的布置圖表示方法,通過對輸入測點清單的統(tǒng)計和計算,得出機柜需要的不同類型的卡件數量,機柜每種類型卡件數量=每種類型點數/卡件配置點數,每個機柜卡件總數=各種類型的卡件數量和,在確定了卡件的類型后就可以計算出每個機柜需要的各種類型的卡件數量,通過VBA編程實現生成未分配測點的通道表,對I/O清單的測點根據測點的名稱包含的關鍵字進行分組,將分組后的測點分配到通道表,本發(fā)明實現了機柜的自動布置和測點的自動分配,給DCS機柜的設計帶來了巨大的便利。提高了工作效率,節(jié)約了施工成本。附圖說明圖1是本發(fā)明的程序流程圖。具體實施方式下面將結合部分實例對本發(fā)明進行進一步詳細說明。本發(fā)明應用于發(fā)電廠中,用于DCS機柜通道表自動生成和分配,是一種分配DCS所用I/O卡件的方法。該方法基于熱控設計技術和計算機技術,以EXCELVBA為設計平臺,具體包括以下操作步驟:1、將IO測點清單輸入計算機系統(tǒng),測點清單中包含各測點的測點編號、設備名稱、測點名稱、信號類型和分組號,此時測點清單的分組號一列是空白的,表中的分組號在第5步時才生成,測點清單如下表1(表中只示例了部分測點)。測點類型包括AI測點、AO測點、RTD測點、TC測點、DI測點、DO測點。表1:2、輸入所選用的I/O卡件類型及卡件配置點數,根據每種類型卡件數量=每種類型測點的點數/卡件配置點數,計算出每種類型卡件的數量。卡件主要的類型和配置點數包括AI:4點、8點、16點;AO:4點、8點、16點;TC:4點、8點、16點;RTD:4點、8點、16點;DI:16點、32點;DO:16點、32點。如果測點清單中需要分配的測點AI為30點、AO為30點、TC為10點、RTD為20點、DI為110點、DO為115點,而I/O卡件選擇8點的AI卡、8點的AO卡、8點的TC卡、16點的RTD卡、32點的DI卡、32點的DO卡,根據每種類型卡件數量=每種類型測點的點數/卡件配置點數,計算得出共需要AI卡4塊、AO卡4塊、TC卡2塊、RTD卡2塊、DI卡4塊、DO卡4塊。如果按照上表1中所列出的測點數量,則計算得出需要AI卡3塊、AO卡1塊、RTD卡1塊、TC卡1塊、DI卡1塊、DO卡1塊。3、輸入機柜I/O卡件容量參數;所述機柜I/O卡件容量參數包括布卡面數、線槽列數、線槽參數。采用順序布置或平均分配的原則將卡件布置到各機柜中,將卡件布置到機柜中的具體方法是:輸入機柜I/O卡件容量參數后,根據每槽卡件數參數=線槽列數×線槽參數的公式、再按照順序布置和平均分配的原則將所有I/O卡件分配到機柜中;并生成每臺機柜內I/O卡件的EXCEL布置圖和卡件清單;所述EXCEL布置圖的橫坐標為線槽號,豎坐標為卡件號,橫坐標和豎坐標交匯處的內容為卡件類型,如表2。表2中的機柜的正反兩面都具有一列布卡的線槽,正反兩面共有4列線槽,每列線槽中布置6個卡件。所述順序布置原則是指所有類型的卡件按照AI卡件、AO卡件、RTD卡件、TC卡件、DI卡件、DO卡件的排列順序,將各卡件由上到下由左到右排列到EXCEL布置圖中。表2:4、掃描I/O卡件的EXCEL布置圖,根據每個機柜卡件總數=各種類型的卡件數量之和的公式計算出每個機柜中布置的不同類型I/O卡件的數量,根據配置的卡件點數和順序生成未分配測點的I/O卡件通道表,所述未分配測點的I/O卡件通道表見第6步生成的通道分配表(表4)的前4列,包括序號、卡件制式、卡件編號、通道號。生成未分配測點的I/O卡件通道表的方法是:對EXCEL布置圖按照上到下由左到右順序掃描配置的卡件,根據卡件的點數(本示例選擇8點AI卡、8點AO卡、8點TC卡、16點RTD卡、32點DI卡、32點DO卡)采用EXCELVBA編程生成通道分配表,EXCELVBA采用雙循環(huán)編程實現,外循環(huán)為卡槽總數,內循環(huán)為根據卡件類型得到的卡件配置點數,如第一個卡槽判斷為AI卡,卡件選擇為8點,通過編程循環(huán)8次產生8行通道表,其他卡件以此類推,得到未分配測點的I/O卡件通道表。5、對測點進行分組,分組方法是選取測點清單中的關鍵詞作為分組字符內容,即將測點清單中設備名稱(中文描述)一列中關鍵詞(這里的關鍵詞是設備的名稱,就是將設備名稱作為分組字符內容)相同的測點分成一組,形成分組表(見表3),然后在測點清單中查找分組表中的關鍵詞,得到測點的分組號,填入第1步的測點清單的分組號列。表3設備名稱(表1測點清單的中文描述一列中的內容包含設備名稱和測點名稱)往往帶有所屬系統(tǒng)或設備的名稱,可以利用于對測點的分組。分組時可以建立測點清單分組表,在設備名稱中查找分組表中的分組字符內容,查找順序是由左到右、由上到下,分組表中的分組字符內容根據項目中可能出現的設備名稱由左到右按照分組序號排列,由上到下按照嚴格程度逐步放松的方式填寫,可以將分到一組的設備填寫到一列中。例如:可以將“1設備”和“A設備”分在一個卡件上,在分組表中填寫到一列中,即它們的分組號是相同的;同樣包含“四”、“D”、“4設備”的測點都會分為第4組。例如某測點名稱“D設備出口門開狀態(tài)”,按照分組表中的順序由左到右查找分組表中的字段是否在測點清單的設備名稱中,第一行沒有找到,查找第二行,以此類推,找到后,退出查找狀態(tài),形成此測點的分組號填寫到步驟1的測點清冊中。最終沒有找到分組關鍵字的,就作為公用設備或系統(tǒng)測點分為0組。將所有測點分組后根據不同分組的測點分配到不同卡件的原則進行分配。在實際工程設計過程中,可能會出現卡件的數量不滿足分組數的需要,又不想留有過多的備用通道,可以通過程序進行提示,調整分組方法,將可以合并的分組進行合并,或者增加I/O卡件的數量增加備用量。測點中包含兩個分組關鍵字按照先出現的進行分組。6、將測點按照分組結果和信號類型分配到不同的卡件I/O上,得到通道分配表。具體方法是將設備名稱和信號類型相同的測點按照設備名稱字符和信號類型字符順序依次排列并分配到未分配測點的I/O卡件通道表的不同卡件的通道上,得到I/O卡件通道分配表。見表4是形成的通道分配表的示例。分配測點到不同的I/O卡件上時,要將設備名稱字符不相同的測點分配在不同的I/O卡件上,分配過程中還要使每臺機柜中卡件具有冗余量,分配過程中先分配有分組號的測點,沒有分組號的剩余的測點作為公用部分分配到空余通道的卡件上或公用系統(tǒng)機柜中。表4本發(fā)明通過對輸入的測點清單的統(tǒng)計和計算,得出機柜需要的不同類型的卡件數量。使各個廠家的DCS系統(tǒng)的卡件的種類形成統(tǒng)一的標準(卡件主要的種類和點數AI:4、8、16;AO:4、8、16;TC;4、8、16;RTD:AI:4、8、16;DI:16、32;DO:16、32。DCS機柜采用單面2列到3列豎向線槽的出線方式。),因此機柜每種類型卡件數量=每種類型點數/卡件配置點數,每個機柜卡件總數=各種類型的卡件數量之和,在確定了使用卡件的種類后就可以計算出每個機柜需要的各種類型的卡件數量,設計出EXCEL格式的機柜卡件布置圖,并形成測點的I/O卡件通道表。