趙穎淼
摘 要:本文闡明了模塊化設(shè)計(jì)的概念、功能模塊的設(shè)計(jì)原理,簡(jiǎn)單介紹了模塊化設(shè)計(jì)的特點(diǎn)及發(fā)展前景。針對(duì)一汽通用哈爾濱輕型汽車(chē)有限公司搬遷改造項(xiàng)目涂裝車(chē)間機(jī)運(yùn)系統(tǒng)的電氣控制系統(tǒng),詳細(xì)介紹了模塊化編程的方法及模塊化程序的實(shí)際應(yīng)用。對(duì)電氣控制系統(tǒng)的設(shè)計(jì)具有一定的實(shí)際指導(dǎo)意義。
關(guān)鍵詞:模塊化設(shè)計(jì);PLC;RSLogix5000軟件;標(biāo)簽;數(shù)據(jù)結(jié)構(gòu)體
1 模塊化設(shè)計(jì)介紹
1.1 模塊化設(shè)計(jì)
簡(jiǎn)單地說(shuō)就是程序的編寫(xiě)不是開(kāi)始就逐條錄入計(jì)算機(jī)語(yǔ)句和指令,而是用主程序、子程序、子過(guò)程等框架把軟件的主要結(jié)構(gòu)和流程描述出來(lái),并定義和調(diào)試好各個(gè)框架之間的輸入、輸出鏈接關(guān)系,以功能模塊為單位進(jìn)行程序設(shè)計(jì)實(shí)現(xiàn)其求解算法的方法。
1.2 模塊化設(shè)計(jì)具有以下優(yōu)點(diǎn)
大量利用已有的經(jīng)過(guò)試驗(yàn)、生產(chǎn)和市場(chǎng)驗(yàn)證的模塊,可以降低設(shè)計(jì)風(fēng)險(xiǎn),提高產(chǎn)品的可靠性和設(shè)計(jì)質(zhì)量;設(shè)計(jì)的重用及并行的產(chǎn)品開(kāi)發(fā)和測(cè)試可以大大縮短設(shè)計(jì)周期;模塊化降低程序復(fù)雜度,使程序設(shè)計(jì)、調(diào)試和維護(hù)等操作簡(jiǎn)單化;模塊化有利于企業(yè)研發(fā)團(tuán)隊(duì)分工,規(guī)范不同團(tuán)隊(duì)間的信息接口,進(jìn)行更為深入的專(zhuān)業(yè)化研究和不同模塊系統(tǒng)的并行開(kāi)發(fā);模塊化是在傳統(tǒng)設(shè)計(jì)基礎(chǔ)上發(fā)展起來(lái)的一種新的設(shè)計(jì)思想,現(xiàn)已成為一種新技術(shù)被廣泛應(yīng)用,模塊化設(shè)計(jì)的產(chǎn)品正在不斷涌現(xiàn)。
2 項(xiàng)目簡(jiǎn)介
一汽通用哈爾濱輕型汽車(chē)有限公司搬遷改造項(xiàng)目是一個(gè)年產(chǎn)10萬(wàn)輛的輕型卡車(chē)生產(chǎn)線。涂裝車(chē)間的電氣控制系統(tǒng)劃分為12個(gè)控制系統(tǒng),其中機(jī)運(yùn)設(shè)備電氣控制系統(tǒng)7個(gè),工藝設(shè)備電氣控制系統(tǒng)5個(gè)。共使用12套R(shí)OCKWELL的PLC ,使用DeviceNET現(xiàn)場(chǎng)總線。電氣控制系統(tǒng)是在美國(guó)通用汽車(chē)公司的工程師指導(dǎo)和ROCKWELL(中國(guó))全方位技術(shù)支持下,完全采取模塊化設(shè)計(jì)思想進(jìn)行設(shè)計(jì)的,每個(gè)控制系統(tǒng)都是由若干數(shù)量和種類(lèi)的單元模塊與盤(pán)柜模塊組成?;谟布哪K化設(shè)計(jì)和RSLogix5000軟件的特性,控制程序完全采用模塊化設(shè)計(jì)思想編制。
3 軟件介紹
RSLogix5000是美國(guó)羅克韋爾自動(dòng)化有限公司開(kāi)發(fā)的用于對(duì)其公司PLC產(chǎn)品的編程軟件。RSLogix5000軟件是符合IEC61131-3標(biāo)準(zhǔn)的軟件包,是一個(gè)包含編程、診斷、在線監(jiān)控等功能的集成系統(tǒng)開(kāi)發(fā)平臺(tái)。系統(tǒng)的主要功能是為控制工程師和系統(tǒng)編程人員提供一個(gè)可以把他們的程序概念轉(zhuǎn)變成一系列的程序圖和定義用于快速地創(chuàng)建可執(zhí)行程序。它具有以下幾個(gè)顯著特點(diǎn):
統(tǒng)一的項(xiàng)目查看;具有控制器標(biāo)簽(Controller Tags)和程序標(biāo)簽(Program Tags)兩類(lèi)標(biāo)簽;用戶可以自定義的數(shù)據(jù)結(jié)構(gòu)體;每個(gè)程序都包含程序標(biāo)簽、一個(gè)可執(zhí)行的主例程和多個(gè)其他例程。
3.1 軟件界面
本項(xiàng)目程序設(shè)計(jì)采用了V16.03.00版本的RSLogix5000軟件,其界面如圖1所示。左側(cè)的Controller Organizer選項(xiàng)欄中呈樹(shù)狀列表顯示了控制器的相關(guān)信息。包括全局作用域標(biāo)簽(Controller Tags)、任務(wù)(Tasks)、數(shù)據(jù)類(lèi)型(Data Types)、I/O配置(I/O Configuration)等。
3.2 標(biāo)簽及用戶自定義的數(shù)據(jù)結(jié)構(gòu)體
標(biāo)簽就是實(shí)際工程中的變量,有模擬量如水位、壓力、溫度等,數(shù)字量如打開(kāi)、關(guān)閉啟動(dòng)、停止等。在程序中使用它們進(jìn)行編程,調(diào)試中通過(guò)在線監(jiān)視在窗口中查看當(dāng)前狀態(tài)。
標(biāo)簽的數(shù)據(jù)類(lèi)型可以分為兩大兩類(lèi):①基本類(lèi)型:布爾型(BOOL)、短整型(SINT)、整型(INT)、雙整型(DINT)、實(shí)型(REAL);②結(jié)構(gòu)體類(lèi)型:預(yù)定義型(Predefined)、用戶定義型(User-Defined)。
結(jié)構(gòu)體是由一系列具有相同類(lèi)型或不同類(lèi)型的數(shù)據(jù)構(gòu)成的數(shù)據(jù)集合。結(jié)構(gòu)體和其他基本數(shù)據(jù)類(lèi)型比較具有一個(gè)顯著的優(yōu)點(diǎn):結(jié)構(gòu)體可以做成想要的數(shù)據(jù)類(lèi)型以方便日后的使用。
3.3 標(biāo)簽的作用域
在上面我們提到過(guò)此軟件的標(biāo)簽包括控制器標(biāo)簽和程序標(biāo)簽兩類(lèi)。兩類(lèi)標(biāo)簽最主要的區(qū)別就是作用域不同。控制器標(biāo)簽是全局作用域標(biāo)簽,它可以被控制器內(nèi)的全部例程使用而不管這些例程歸屬于哪個(gè)程序,對(duì)控制而言這些標(biāo)簽是全局的。程序標(biāo)簽是局部作用域標(biāo)簽,它只限于該標(biāo)簽所在的程序內(nèi)的例程使用,在其他程序的例程不能訪問(wèn)另一個(gè)程序的程序標(biāo)簽,對(duì)于控制而言,這些標(biāo)簽是局部的。
控制器標(biāo)簽在Controller Tags里顯示可以直接增加或新建的方式添加新的控制器標(biāo)簽。程序標(biāo)簽的位置在各個(gè)程序里的Program Tags中,以同樣的方法添加。在Controller Tags或Program Tags中我們可以看見(jiàn)有一列名為“Alias For”的區(qū)域。這部分是用于添加標(biāo)簽名稱(chēng)的,我們稱(chēng)之為別名標(biāo)簽。當(dāng)一個(gè)標(biāo)簽被編輯了別名標(biāo)簽后,則表明此標(biāo)簽和該別名標(biāo)簽實(shí)際為一個(gè)標(biāo)簽,在模塊化設(shè)計(jì)中有很大的作用。
3.4 程序結(jié)構(gòu)介紹
每個(gè)程序都包含程序標(biāo)簽、一個(gè)可執(zhí)行的主例程和多個(gè)其他例程。程序標(biāo)簽定義了本程序內(nèi)所用到的所有局部標(biāo)簽;主例程內(nèi)通過(guò)調(diào)用指令可以按主例程內(nèi)的順序調(diào)用其他例程。
4 基于RSLogix5000的模塊化設(shè)計(jì)
下面以本項(xiàng)目機(jī)運(yùn)設(shè)備控制程序的編制來(lái)說(shuō)明基于RSLogix5000的程序模塊化設(shè)計(jì)方法。如圖2所示,是一個(gè)雙向變頻滾床的控制程序。程序中的每個(gè)例程都是以其主要功能命名的,這樣可以使得應(yīng)用此程序的人員清晰易懂。程序中包括了該設(shè)備的I/O映射(B001_MapInputs/ B002_MapOutputs)、參數(shù)(B005_Parameters)、模式(M001_Modes)、連鎖(zB100_Interlocks_PRBA)、基本動(dòng)作(zS021_SkidIndexIn ~ zS905_SkidJogRev)及ARMORSTART 的控制(zV_PRB
_AB284VFD)等例程。而這些例程就是一個(gè)個(gè)模塊程序,在其他類(lèi)型設(shè)備的控制程序中也可以得到廣泛的應(yīng)用。
4.1 標(biāo)簽的模塊化設(shè)計(jì)
利用RSLogix5000的控制器標(biāo)簽和程序標(biāo)簽的控制域不同及用戶可以自定義數(shù)據(jù)結(jié)構(gòu)體的特點(diǎn)。程序標(biāo)簽采用了模塊化的設(shè)計(jì)方法。首先,將程序中所需要的變量統(tǒng)計(jì)好,按照共同屬性分類(lèi)建立出所需要的數(shù)據(jù)結(jié)構(gòu)體。然后,在標(biāo)簽中建立程序中所需要的標(biāo)簽并選擇對(duì)應(yīng)的數(shù)據(jù)類(lèi)型。標(biāo)簽的建立是以所有設(shè)備通用性所建立的,在別名標(biāo)簽一列填的才是具體設(shè)備的名稱(chēng)。這樣的設(shè)計(jì)使得建立好一個(gè)設(shè)備的模板程序后,其他此類(lèi)設(shè)備的控制程序可以直接使用這個(gè)模板程序,只需將標(biāo)簽別名按照需要修改,不需要修改程序。如果是按照一個(gè)設(shè)備所建立的標(biāo)簽則應(yīng)用此模板程序時(shí)需要重新建立標(biāo)簽,然后按照標(biāo)簽修改各個(gè)例程,也就稱(chēng)不上為模塊化設(shè)計(jì)了。
4.2 I/O接口程序的模塊化設(shè)計(jì)
在硬件圖紙的設(shè)計(jì)時(shí),已經(jīng)規(guī)定好設(shè)備上的各傳感器的名稱(chēng)和作用。程序編制時(shí)將設(shè)備的輸入點(diǎn)和對(duì)應(yīng)的傳感器進(jìn)行映射,在其他例程中就可以直接使用傳感器名稱(chēng)編程。這樣的設(shè)計(jì)使得今后使用此程序的人員方便理解程序。
如圖3所示,為B001_MapInputs中的一條語(yǔ)句(Rung),該Rung表示程序中該設(shè)備的滑撬點(diǎn)動(dòng)正轉(zhuǎn)(SkidJogForward)、滑橇進(jìn)入(SkidIndexIn)、滑橇移出(SkidIndexOut)這三個(gè)程序中的虛擬按鈕等同于按鈕站上的F403PB按鈕。此處的設(shè)計(jì)方式使得在應(yīng)用此模板時(shí)只需將按鈕這一點(diǎn)按照需要修改即可,不必將程序中應(yīng)用到這三個(gè)虛擬按鈕的點(diǎn)都作相應(yīng)修改。大大節(jié)省了應(yīng)用此模塊的修改時(shí)間。
如圖4所示為B002_MapOutputs中的兩個(gè)Rung,一個(gè)是將ARMORSTART的輸出全部映射到相應(yīng)的數(shù)據(jù)區(qū);一個(gè)是控制按鈕站上相應(yīng)的指示燈亮滅的Rung。因?yàn)橛脩艨梢宰远x數(shù)據(jù)結(jié)構(gòu)體,使得可以通過(guò)一個(gè)指令將多個(gè)點(diǎn)映射到對(duì)應(yīng)的數(shù)據(jù)區(qū),這對(duì)模塊化設(shè)計(jì)的使用性有很大的幫助。
4.3 設(shè)備動(dòng)作程序的模塊化設(shè)計(jì)
根據(jù)本項(xiàng)目的機(jī)運(yùn)設(shè)備單元的功能特點(diǎn),共設(shè)計(jì)出26個(gè)對(duì)應(yīng)設(shè)備單元的電氣單元模塊。其中絕大部分都包含了雙向變頻滾床的動(dòng)作,一個(gè)雙向變頻滾床包含以下6個(gè)基本動(dòng)作:
滑橇進(jìn)入SkidIndexIn;滑橇反向進(jìn)入SkidReverseIn;滑撬點(diǎn)動(dòng)正轉(zhuǎn)SkidJogForward;滑橇移出SkidIndexOut;滑橇反向移出SkidReverseOut;滑撬點(diǎn)動(dòng)反轉(zhuǎn)SkidJogRevers。
其他設(shè)備是在雙向變頻滾床的動(dòng)作基礎(chǔ)上增加相應(yīng)的動(dòng)作,如轉(zhuǎn)臺(tái)多了正轉(zhuǎn)、反轉(zhuǎn),移行機(jī)多了移行機(jī)前進(jìn)、后退,升降機(jī)多了上升、下降等動(dòng)作。這樣我們將這些不同的動(dòng)作分別設(shè)計(jì)出相應(yīng)的控制程序模塊,當(dāng)設(shè)計(jì)不同類(lèi)型的設(shè)備的控制程序模塊,然后通過(guò)程序中的主例程對(duì)它們進(jìn)行調(diào)用。
4.4 變頻控制程序的模塊化設(shè)計(jì)
在I/O接口模塊設(shè)計(jì)中提到其中一個(gè)Rung是將ARMORSTART的輸出全部映射到相應(yīng)的數(shù)據(jù)區(qū)。專(zhuān)門(mén)為這些ARMORSTART的輸出設(shè)計(jì)了一個(gè)例程,用于PRB(Power Roll Bed滾床)變頻控制。ARMORSTART的變頻控制有Present Freq、Comm Port、4-20mA Input等多種形式,我們采用的是Present Freq的控制方式。首先在ARMORSTART的參數(shù)配置中將Parameter 138 (Speed Reference)選擇Option 4 (Preset Freq)、Parameter 151 (Digital In1 Sel)選擇Preset Freq、Parameter 152 (Digital In2 Sel)選擇Preset Freq。這種控制方式的基本原理是通過(guò)“DrvIn2-DrvIn”的組合:“0-0”= Preset Frequency 1;“0-1”= Preset Frequency 2;“1-0”= Preset Frequency 3;“1-1”= Preset Frequency 4。同樣,我們?cè)贏RMORSTART的參數(shù)配置中將Parameter 170 —Parameter 173 (Preset Frequency 0—3)這四個(gè)參數(shù)設(shè)定成我們想要的4個(gè)速度的頻率(0~50Hz)。
因?yàn)橛布哪K化設(shè)計(jì)使得每個(gè)設(shè)備上相同位置的檢測(cè)開(kāi)關(guān)的作用相同,因此只需將限定條件設(shè)計(jì)成模板程序,當(dāng)輸送的橇體到不同的位置時(shí)使得“DrvIn2-DrvIn”發(fā)生變化。
通過(guò)上面的介紹不難發(fā)現(xiàn),硬件高度采用了模塊化的設(shè)計(jì),使得設(shè)備規(guī)范化和統(tǒng)一化。利用這一特點(diǎn)再對(duì)程序進(jìn)行模塊化的編制使得做好模塊程序后,可以按照各類(lèi)設(shè)備的特點(diǎn)組合成各類(lèi)設(shè)備的模板程序。
5 模塊化設(shè)計(jì)的實(shí)際應(yīng)用
在按照上述方法編制出模板程序后,設(shè)計(jì)人員可以簡(jiǎn)單、快速、正確的編制出相同設(shè)備的控制程序。以控制系統(tǒng)中一臺(tái)變頻滾床為例,編制程序的步驟如下:
觀察模板程序的程序標(biāo)簽,確定需要添加別名標(biāo)簽的數(shù)量和數(shù)據(jù)結(jié)構(gòu)體;在控制器標(biāo)簽列表中添加控制器標(biāo)簽(并注意數(shù)據(jù)結(jié)構(gòu)體類(lèi)型應(yīng)當(dāng)與程序標(biāo)簽中的數(shù)據(jù)結(jié)構(gòu)體類(lèi)型一致);)在程序標(biāo)簽中列表中添加別名標(biāo)簽;在例程中修改設(shè)備的操作按鈕名稱(chēng)及指示燈名稱(chēng);在例程中修改設(shè)備的Offset值、ASCⅡ值,用于在人機(jī)界面上的顯示。
對(duì)于變頻滾床來(lái)說(shuō),每一個(gè)滾床的程序都只需通過(guò)模板程序進(jìn)行以上五步修改即可完成。如果只有一兩個(gè)滾床,這種設(shè)計(jì)并看不出任何優(yōu)勢(shì),但是據(jù)統(tǒng)計(jì)本項(xiàng)目共有222臺(tái)滾床,通過(guò)重復(fù)的、簡(jiǎn)單的修改就可完成以往設(shè)計(jì)人員需要很長(zhǎng)時(shí)間才能完成的工作量,這就體現(xiàn)了模塊化設(shè)計(jì)的優(yōu)勢(shì)。
6 結(jié)語(yǔ)
通過(guò)介紹可以感受得到,模塊化設(shè)計(jì)大大提高了設(shè)計(jì)效率、減少了設(shè)計(jì)師的勞動(dòng)負(fù)荷、縮短了設(shè)計(jì)周期,通過(guò)多種模塊程序的組合可以快速的制作多種產(chǎn)品的模板程序,具有更高的一致性、互換性,從而提高了設(shè)計(jì)質(zhì)量及日后的維護(hù)和檢修。大規(guī)模定制已成為現(xiàn)代制造業(yè)的主流生產(chǎn)模式,隨著人們對(duì)個(gè)性化產(chǎn)品的要求越來(lái)越高,市場(chǎng)競(jìng)爭(zhēng)日益激烈,企業(yè)迫切需要切實(shí)可行的產(chǎn)品設(shè)計(jì)方法。具有多重突出優(yōu)勢(shì)的模塊化設(shè)計(jì)在當(dāng)今這樣一個(gè)高速發(fā)展、講究效率的社會(huì)中勢(shì)必會(huì)得到發(fā)展和普及。隨著模塊化設(shè)計(jì)理念的廣泛應(yīng)用和不斷發(fā)展,它將改變我們將來(lái)的生產(chǎn)方式,提高產(chǎn)品的質(zhì)量。
參考文獻(xiàn):
[1] 童時(shí)中.模塊化原理設(shè)計(jì)方法及應(yīng)用[M].北京:中國(guó)標(biāo)準(zhǔn)出版社,2001:05.
[2] 郭嵐,張祥建,徐晉. 模塊化的微觀結(jié)構(gòu)與風(fēng)險(xiǎn)特性:基于產(chǎn)業(yè)集群的分析[J]. 科研管理. 2008(05)
[3] 苗建軍,曹江濤,孫劍. 模塊網(wǎng)絡(luò):產(chǎn)業(yè)集群發(fā)展的新階段[J]. 科技進(jìn)步與對(duì)策. 2008(01)
[4] 戴魁早. 產(chǎn)業(yè)組織模塊化研究前沿探析[J]. 外國(guó)經(jīng)濟(jì)與管理. 2008(01)
[5] 鄧雪琴. 論珠三角產(chǎn)業(yè)集群發(fā)展模式的轉(zhuǎn)型[J]. 商業(yè)時(shí)代. 2007(26)