一種高性能計(jì)算機(jī)可編程控制器(PCC)
作 者:中國礦業(yè)大學(xué)信電學(xué)院 / 張志龍
1 引言
隨著現(xiàn)代計(jì)算機(jī)技術(shù)的發(fā)展,可編程控制器有了長足的發(fā)展。1968年,美國最大的汽車制造商gm公司為了自身汽車工業(yè)的跨越式發(fā)展,提出新一代控制器應(yīng)具備十大條件。這成為了當(dāng)代可編程控制器的發(fā)展動(dòng)向。1969年,美國數(shù)字設(shè)備公司(dec)成功研制世界第一臺(tái)可編程序控制器pdp-14,并在gm公司的汽車自動(dòng)裝配線上首次使用并獲得成功。從此,這項(xiàng)新技術(shù)迅速在世界各國得到推廣應(yīng)用。20世紀(jì)70年代,日本、西歐國家也相繼引進(jìn)和研制出自己的第一臺(tái)可編程控制器。我國從1974年開始研制,1977年開始工業(yè)推廣應(yīng)用??删幊炭刂破鳜F(xiàn)在已經(jīng)成為我國工業(yè)設(shè)備控制使用增長速度最快的控制器。由于控制器出現(xiàn)以后,名稱混亂,功能也各不相同,因此美國電氣制造商協(xié)會(huì)(nema)和國際電工委員會(huì)(iec)分別于1980年和1985年對(duì)可編程控制器(pc)進(jìn)行了定義。這就是后來說的“藍(lán)領(lǐng)計(jì)算機(jī)”。隨著現(xiàn)代計(jì)算機(jī)技術(shù)、網(wǎng)絡(luò)通信技術(shù)、現(xiàn)代自動(dòng)控制技術(shù)的高速發(fā)展,可編程控制器的數(shù)學(xué)處理能力、網(wǎng)絡(luò)通訊能力和智能控制能力等得到大大提高。在1994年可編程計(jì)算機(jī)控制器(programmable computer controller簡稱pcc)的概念被提出來,它代表了當(dāng)今工業(yè)控制技術(shù)的發(fā)展趨勢(shì)。奧地利貝加萊(b&r)工業(yè)自動(dòng)化公司的pcc為其典型代表,其是集計(jì)算機(jī)技術(shù)、通信技術(shù)、控制技術(shù)(3g技術(shù))為一體的新型工業(yè)控制裝置。
2 pcc功能模塊構(gòu)成及其特點(diǎn)
pcc一種計(jì)算機(jī)控制系統(tǒng),具有中央處理器(cpu),輸入/輸出(i/o)接口、電源等,其構(gòu)成如圖1所示。pcc實(shí)現(xiàn)了系列化、模塊化、標(biāo)準(zhǔn)化的設(shè)計(jì),使得其設(shè)計(jì)、安裝比較容易,調(diào)試周期短、維護(hù)簡單等特點(diǎn),其所有的輸入輸出接口電路均采用光電隔離,可有效抑制外部干擾源對(duì)pcc的影響。另外,pcc模塊品種豐富,通信接口完善,配置簡單,可較容易組網(wǎng)通信?,F(xiàn)代的pcc已經(jīng)從較小規(guī)模的單機(jī)順序控制發(fā)展到包括過程控制、運(yùn)動(dòng)控制、步序控制等,廣泛應(yīng)用在塑料、包裝、印刷、造紙等許多行業(yè)中的控制,這些應(yīng)用極大地提高了這些行業(yè)的生產(chǎn)效率和產(chǎn)品的質(zhì)量。
程序執(zhí)行上,pcc采用分時(shí)多任務(wù)操作系統(tǒng),它可以很好地實(shí)現(xiàn)實(shí)施多任務(wù),用戶可以根據(jù)自己的生產(chǎn)需要,編制自己的程序并設(shè)定循環(huán)時(shí)間??刂葡到y(tǒng)為用戶提供了八個(gè)不同循環(huán)時(shí)間和不同優(yōu)先級(jí)別的任務(wù)等級(jí),同時(shí)它是一個(gè)可自定義、具有確定性的實(shí)施多任務(wù)操作系統(tǒng)。同時(shí),為了能夠給技術(shù)人員和編程人員提供更多的服務(wù),方便用戶得到自己關(guān)心的數(shù)據(jù)和控制系統(tǒng)狀態(tài)等情況,pcc編程系統(tǒng)為用戶提供了很多不同的診斷工具。這些工具可以顯示正在運(yùn)行的概要,可以讀取、存儲(chǔ)和修改信息,可以深入系統(tǒng)并優(yōu)化它。
圖1 pcc模塊功能構(gòu)成
3 貝加萊2000系列pcc
b&r2000系列pcc有2003系列和2005系列。包括:cpu模塊、總線控制器模塊、通訊模塊、電源模塊、現(xiàn)場(chǎng)總線模塊、數(shù)字量、模擬量輸入、輸出模塊計(jì)數(shù)和定位模塊等。b&r2000系列pcc硬件具有如下特點(diǎn)[2]:①硬件模塊化;②網(wǎng)絡(luò)通信能力;③有與hmi通訊的接口;④有工業(yè)汁算機(jī)能力;⑤emc符合en61131—2;⑥可靠的i/o總線協(xié)議;⑦獨(dú)立的i/o總線和系統(tǒng)總線⑧具有工業(yè)強(qiáng)度的端子排;⑨多i/o總線系統(tǒng)的高性能。
圖2 2003系列pcc
(1)2003系列小型pcc(見圖2)
2003系列屬于小型pcc,其特點(diǎn)為:2003系列采用了極高性價(jià)比的緊湊型設(shè)計(jì),節(jié)省了裝備的空間;can總線網(wǎng)絡(luò)實(shí)現(xiàn)了操作面板、顯示單元、驅(qū)動(dòng)以及其他外圍設(shè)備直接的連接;遠(yuǎn)程i/o系統(tǒng)實(shí)現(xiàn)了通過can進(jìn)行遠(yuǎn)程控制的可能;大量的旋入式模塊也確保了任何傳感器和執(zhí)行器信號(hào)的連接;實(shí)現(xiàn)機(jī)器或系統(tǒng)中分布式或集成單元,單元間的主干通信通過標(biāo)準(zhǔn)的以太網(wǎng)tco/ip網(wǎng)絡(luò)或現(xiàn)場(chǎng)總線實(shí)現(xiàn),在每個(gè)單元中,2003系列可通過驅(qū)動(dòng)操作面板和外圍設(shè)備進(jìn)行擴(kuò)展,依據(jù)機(jī)器單元所需的計(jì)算能力選擇合適的cpu模塊;2003系列的緊湊型控制器也適用于大型系統(tǒng),如果帶本地i/o的cpu通過ethernet powerlink與各個(gè)分布式組件連接,便可創(chuàng)建一個(gè)用于高動(dòng)態(tài)運(yùn)動(dòng)任務(wù)
(2)2005系列中型pcc(見圖3)
2005系列屬于中型pcc,是貝加萊(b&r)出品的高性能可編程計(jì)算機(jī)控制器(pcc),其不僅具有2003系類的特點(diǎn)外,還有以下優(yōu)點(diǎn):支持嵌入式pc-based技術(shù),同時(shí)具有很強(qiáng)的分析計(jì)算能力,其外圍信號(hào)輸入輸出的巨大帶寬可滿足機(jī)械制造、工廠自動(dòng)化及過程自動(dòng)化的所有要求,配合貝加萊(b&r)的其它產(chǎn)品,如i/o系統(tǒng),工業(yè)pc及控制器等,可創(chuàng)建滿足最高要求的自動(dòng)化方案;依靠先進(jìn)的接口、現(xiàn)場(chǎng)總線系統(tǒng),網(wǎng)絡(luò)及外圍設(shè)備,可完成最佳的數(shù)據(jù)傳輸任務(wù);最新的2005系列基于intel兼容處理器,具備最先進(jìn)的構(gòu)架,創(chuàng)造性的pc技術(shù)如compact flash存貯,以太網(wǎng)連接以及apci擴(kuò)展插槽等的使用使得it世界中高性能產(chǎn)品在自動(dòng)化領(lǐng)域也得以應(yīng)用;編程采用全兼容、格式統(tǒng)一的b&r automationstudiotm;為了減少接線,2005系列的i/o模塊可以實(shí)現(xiàn)遠(yuǎn)程操作,總線控制器擺脫了位置限制,并使連接端子更接近于機(jī)器,通過ethernet powerlink傳輸數(shù)據(jù)也是分布式系統(tǒng)實(shí)現(xiàn)最高性能的保障。
2005模塊安裝于底板上,底板又安裝于配電柜中的導(dǎo)軌上,傳感器和執(zhí)行器信號(hào)的連接都預(yù)配置于插入式端子排上,這也就將配電柜中的工作減至最少,2005系列的電源也安裝于底板上,并且有各種電源電壓值可選。每個(gè)從邏輯上相獨(dú)立的機(jī)器單元或產(chǎn)品單元都配備獨(dú)立的控制器,用于控制本地驅(qū)動(dòng)及i/o系統(tǒng),對(duì)這些相互獨(dú)立的單元進(jìn)行的配置、編程及測(cè)試工作在發(fā)貨之前就能輕易完成,單元之間對(duì)時(shí)間要求不是很高的通信以及其間的操作乃至顯示站點(diǎn)以及工廠網(wǎng)絡(luò)都可架構(gòu)于以太網(wǎng)tcp/ip和opc之上。
圖3 2005系列pcc
4 pcc編程系統(tǒng)
4.1編程語言
眾所周知,傳統(tǒng)的工業(yè)可編程控制器編程語言為梯形圖,與大多數(shù)可編程控制器一樣,pcc也采用面向控制過程、面向問題的簡單而直觀的控制型語句,直接表達(dá)被控對(duì)象的動(dòng)作及輸入輸出關(guān)系,直接表達(dá)被控對(duì)象的動(dòng)作及輸入輸出關(guān)系。常見的編程語言有:梯形圖lad(ladder diagram)、指令表il(instruction list)、結(jié)構(gòu)文本st(structured text)、順序功能圖sfc(sequential function chart)、b&r automation studio,以及標(biāo)準(zhǔn)c語言(ansic)等,其中梯形圖lad和指令表il(instruction list)語言目前仍在pcc的使用中很流行,而b&r automation studio和標(biāo)準(zhǔn)c語言(ansic)由于其強(qiáng)大的功能,得到了越來越廣泛的應(yīng)用。
圖4 automation studio編程界面
4.2開發(fā)環(huán)境
目前使用的貝加萊編程軟件為automation studio。圖4為編程軟件的用戶界,automation studiotm用戶界面包括以下內(nèi)容:
主菜單:b&r automation studiotm的主菜單可進(jìn)入所有功能。
工具條:工具條中的按紐可快速運(yùn)行多個(gè)命令和功能。
工作區(qū):打開項(xiàng)目時(shí)在這里顯示,項(xiàng)目窗口可調(diào)節(jié)到最大或合適的窗口大小。
信息窗體:信息窗體位于編程窗體的下方,顯示編譯信息,調(diào)試信息等。此外,還顯示搜索功能“find in files”的結(jié)果。
狀態(tài)條:狀態(tài)條位于整個(gè)窗體的下方,顯示以下信息:關(guān)于菜單命令或工具條圖標(biāo)的簡短幫助;編譯步驟的簡短信息;編程設(shè)備和目標(biāo)系統(tǒng)的在線連接狀態(tài);當(dāng)前活動(dòng)窗體的狀態(tài)數(shù)據(jù)。
(1)狀態(tài)欄(見圖5)
在automation studio中,狀態(tài)欄位于窗口的底部。在窗體的右下方會(huì)顯示以下信息:
a.offline(離線)-與目標(biāo)系統(tǒng)沒有連接
b.連接到的目標(biāo)系統(tǒng)
c.cpu 類型+控制器上的操作系統(tǒng)版本
d.控制器狀態(tài)。
圖5 狀態(tài)欄
(2)錯(cuò)誤記錄本
操作系統(tǒng)會(huì)記錄應(yīng)用程序中發(fā)生的所有致命錯(cuò)誤、警告和信息。這些錯(cuò)誤存儲(chǔ)在系統(tǒng)的錯(cuò)誤記錄本中,并且通過工程窗口可以瀏覽,錯(cuò)誤記錄本也可以存為一個(gè)文件。錯(cuò)誤記錄本位于控制器的存儲(chǔ)器中并可以從存儲(chǔ)器中上載。選擇軟件窗口中的log book 標(biāo)簽打開錯(cuò)誤記錄本。
(3)監(jiān)控窗口(watch)
監(jiān)視窗口的首要目的是觀察和修改控制器的變量。除了變量值,也可以顯示其它重要的信息(數(shù)據(jù)類型、范圍、i/o數(shù)據(jù)點(diǎn)等)。變量以列表的形式來管理,不同的配置(變量組)也可以存儲(chǔ)。通過點(diǎn)擊快捷菜單中insert variable,可以在watch(監(jiān)視)窗口中添加所選任務(wù)的變量。在監(jiān)視窗口中,紅色的燈表示輸出變量,綠色的燈表示輸入變量。雙擊變量的value框會(huì)彈出強(qiáng)制選項(xiàng)窗體,確認(rèn)后就可以強(qiáng)制改變變量的值。當(dāng)開啟強(qiáng)制狀態(tài)時(shí),系統(tǒng)會(huì)將在監(jiān)視窗口輸入的值會(huì)寫到軟件或硬件中,而與i/o數(shù)據(jù)點(diǎn)的狀態(tài)值無關(guān)。監(jiān)控可以用來獲得目標(biāo)系統(tǒng)的信息。
(4)軌跡跟蹤
在對(duì)變量進(jìn)行檢測(cè)時(shí),由于一些變量變化太快,而使watch窗口無法跟上它們的變化。因?yàn)檫@些變量的變化是隨機(jī)的,所以很難確切的說出它們的變化,于是就有了跟蹤器(tracer)。這個(gè)工具可以報(bào)告變量值隨時(shí)間的變化并以圖表的形式顯示出來。圖表結(jié)果可以存儲(chǔ)起來作為以后的觀察和處理。當(dāng)系統(tǒng)監(jiān)控啟動(dòng)時(shí),可以通過點(diǎn)擊快捷菜單下的trace來打開它。
(5)調(diào)試器
調(diào)試器可以捕捉到在文本編程語言中隱藏的軟件錯(cuò)誤。通過在源程序中設(shè)置斷點(diǎn),使程序在設(shè)置斷點(diǎn)的代碼行停止執(zhí)行。這就可以確定變量值和當(dāng)前所執(zhí)行的程序行的直接關(guān)系。當(dāng)你想詳細(xì)了解正在運(yùn)行的程序時(shí),可以使用step into(進(jìn)入)和step over(跳過)功能鍵完成這個(gè)程序段。
(6)profiler
profiler工具可以測(cè)量和顯示重要的系統(tǒng)文件,比如:任務(wù)運(yùn)行時(shí)間;堆棧利用率;系統(tǒng)利用率等。根據(jù)系統(tǒng)利用率(負(fù)載)來分析系統(tǒng)運(yùn)行時(shí)間,這個(gè)信息可以幫助用戶如何使用資源來優(yōu)化系統(tǒng)。
(7)pvi傳輸工具
pvi傳輸工具是一個(gè)多功能的診斷和服務(wù)工具,它不僅僅限于傳輸工程,還結(jié)合了幾個(gè)不同的診斷功能并且在安裝pvi runtime&server時(shí)可選擇安裝pvi傳輸工具。在automation studiotm中進(jìn)入tools菜單后選擇pvi transfer tool來啟動(dòng)pvi傳輸工具。如果沒安裝automation studiotm,也可以在windows start在菜單下直接啟動(dòng)[6]。
圖6為pvi傳輸工具提供的功能圖。
圖6 pvi功能構(gòu)成
5 總結(jié)
可編程計(jì)算機(jī)控制器pcc作為現(xiàn)代工業(yè)控制技術(shù)的發(fā)展趨勢(shì),集合了傳統(tǒng)工業(yè)控制系統(tǒng)的優(yōu)點(diǎn)和高性能,具有友好的編程平臺(tái)、編程語言應(yīng)用廣泛,編程簡單易學(xué)。品種豐富pcc模塊,系列化、模塊化、標(biāo)準(zhǔn)化的設(shè)計(jì)使得它應(yīng)用方便,通用性好,功能強(qiáng)大高速處理能力的cpu、先進(jìn)的操作系統(tǒng),高可靠性和抗干擾能力。實(shí)施多任務(wù)處理系統(tǒng)使得控制過程更加靈活。勝任大型的集散控制、復(fù)雜的過程控制和高精度的運(yùn)動(dòng)控制,能夠完成各種規(guī)模的現(xiàn)場(chǎng)控制任務(wù),應(yīng)用前景非常廣闊。
作者簡介
張志龍 (1985-) 男 碩士研究生,現(xiàn)就讀于中國礦業(yè)大學(xué)信息與電氣工程學(xué)院,研究方向?yàn)殡姍C(jī)控制與變頻器負(fù)面效應(yīng)。
參考文獻(xiàn)(略)