文獻(xiàn)標(biāo)識碼: A
文章編號: 0258-7998(2011)04-0045-03
微波作為一種新能源,因其環(huán)保和高效得到蓬勃發(fā)展,其中微波加熱技術(shù)被廣泛采用。一般的微波加熱設(shè)備控制系統(tǒng)采用PLC+觸摸屏[1],如果是集中控制方案,在小型工業(yè)微波控制系統(tǒng)中使用良好,但是在大陣列磁控管控制系統(tǒng)中就會出現(xiàn)線束過多、安裝及調(diào)試或檢修困難的情況;如果是分布式控制方案,則PLC的成本就會大大提高。而CAN總線成本低、效率高、抗干擾能力強(qiáng)、便于擴(kuò)展等優(yōu)點(diǎn)可以彌補(bǔ)PLC+觸摸屏的控制方式下大陣列磁控管控制系統(tǒng)的不足。
CAN總線是國際上廣泛應(yīng)用的現(xiàn)場總線之一,其模型結(jié)構(gòu)[2]相對于國際標(biāo)準(zhǔn)化組織開放系統(tǒng)互連模型(OSI)只有三層:物理層、數(shù)據(jù)鏈路層和應(yīng)用層。為了使其應(yīng)用更加廣泛靈活,CAN的國際標(biāo)準(zhǔn)ISO 11898中只規(guī)定了物理層和數(shù)據(jù)鏈路層標(biāo)準(zhǔn),沒有定義應(yīng)用層,用戶需要根據(jù)需求制定具體的應(yīng)用層協(xié)議。目前在多種已成國際標(biāo)準(zhǔn)的應(yīng)用層協(xié)議中CANOpen[3]和DeviceNet[4]使用最為廣泛。CANOpen的協(xié)議原型是Bosch公司在1993年提出的,它一般用于機(jī)械的嵌入式網(wǎng)絡(luò)中;DeviceNet由Allen-Bradley公司開發(fā),目前在美國和亞洲的工業(yè)自動化市場上處于領(lǐng)導(dǎo)地位;國內(nèi)工控領(lǐng)域使用較為廣泛的是周立功公司推出的iCAN[5]。這三種協(xié)議標(biāo)準(zhǔn)應(yīng)用廣泛,且便于和其他設(shè)備互聯(lián),但是對于一些相對簡單和獨(dú)立的控制系統(tǒng),它們并不適用且過于復(fù)雜,某些協(xié)議還需要付費(fèi)使用。
因此針對微波控制領(lǐng)域,定義了一種新的CAN總線應(yīng)用協(xié)議——微波控制協(xié)議MWCPro(MicroWave Control Protocol)。
1 MWCPro協(xié)議在大陣列磁控管控制系統(tǒng)中的設(shè)計
制定CAN總線應(yīng)用層協(xié)議時,需要考慮以下幾個方面:報文標(biāo)識符的設(shè)計、多主或主從結(jié)構(gòu)、數(shù)據(jù)的交換方式以及網(wǎng)絡(luò)的管理等。
在大陣列磁控管控制系統(tǒng)中,有整體控制、分組控制和單個控制的要求,因此每個磁控管都要有唯一的地址。采用主從式結(jié)構(gòu),數(shù)據(jù)的交換方式為主機(jī)向從機(jī)發(fā)送命令,從機(jī)返回數(shù)據(jù)以響應(yīng)主機(jī)命令,從機(jī)只可以主動報警。在整個系統(tǒng)中,固定一定數(shù)目的從機(jī)為一組,屬于分布式控制。系統(tǒng)結(jié)構(gòu)如圖1所示。
其中G0代表第0組,Gn代表第n組;S0代表第0個從機(jī),Sm代表第m個從機(jī)。
1.1 協(xié)議介紹
報文ID的設(shè)定是應(yīng)用層協(xié)議最主要的部分,它涉及報文的優(yōu)先權(quán)、延時、報文濾波的使用、可能形成的通信結(jié)構(gòu)和標(biāo)識符使用的效率等。該系統(tǒng)相對簡單獨(dú)立,因此采用CAN 2.0A標(biāo)準(zhǔn)的11位標(biāo)識符外加兩個數(shù)據(jù)字節(jié)作為每幀的ID,如表1所示。
組別號和從機(jī)號的組合除去廣播所用,共有105種,即整個系統(tǒng)可以有105個節(jié)點(diǎn)(主機(jī)或從機(jī))。若選擇常用的Philips 82C250作為總線收發(fā)器,CAN節(jié)點(diǎn)數(shù)目已基本接近其極限110個。如果需要進(jìn)一步擴(kuò)大網(wǎng)絡(luò)規(guī)模,以掛接更多的節(jié)點(diǎn),則可以把標(biāo)準(zhǔn)標(biāo)志符改為29位的擴(kuò)展標(biāo)志符,并利用網(wǎng)控器進(jìn)行擴(kuò)展[6]。
1.2 協(xié)議設(shè)計
磁控管控制系統(tǒng)的功能需求包括:首先確定通信和工作都正常的微波源的個數(shù)以及控制終端之間有無地址沖突;選擇全部、分組或者單個微波源啟動或停止;實(shí)時監(jiān)測每個微波源的各項(xiàng)參數(shù)值,如電流、電壓、溫度、反射功率以及微波泄漏功率等;運(yùn)行途中各微波源的值若超出設(shè)定的閾值(該閾值可修改),或者微波源本身出現(xiàn)故障(偶然故障或永久性故障),則實(shí)時報警,并且系統(tǒng)要采取相應(yīng)的措施停止相關(guān)功能的繼續(xù)運(yùn)行。
根據(jù)以上功能要求設(shè)計了8種命令碼:
ORD0:報警幀(數(shù)據(jù)幀),無廣播形式,從機(jī)發(fā)送主機(jī)讀取,優(yōu)先權(quán)最高。為實(shí)現(xiàn)同時報警,功能碼和子功能碼中的每一位代表一種報警,即16種報警。
ORD1:輪詢在線(遠(yuǎn)程幀),主機(jī)依次發(fā)送ORD1命令給各個從機(jī),從機(jī)接收后返回一個確認(rèn)幀,以便主機(jī)確認(rèn)該從機(jī)依舊在線。
ORD2:計算通信往返時間(遠(yuǎn)程幀),在確定所有從機(jī)都在線時,計算主機(jī)與從機(jī)之間一幀數(shù)據(jù)平均的往返時間。該往返時間將作為判斷從機(jī)響應(yīng)是否超時的標(biāo)準(zhǔn)。
ORD3:索要從機(jī)數(shù)據(jù)(數(shù)據(jù)幀),無廣播形式,從機(jī)發(fā)送主機(jī)讀取。
ORD4:從機(jī)地址沖突檢測(遠(yuǎn)程幀),每個從機(jī)都向其所在組的其他從機(jī)發(fā)送ORD4,其他從機(jī)接收到ORD4后將所接收ID中的地址位與自身地址進(jìn)行比較,若相同則以O(shè)RD0命令向主機(jī)報告地址沖突,否則無需響應(yīng)此消息;主機(jī)本身不對ORD4進(jìn)行處理。
ORD5:廣播命令(遠(yuǎn)程幀),開從機(jī)。
ORD6:廣播命令(遠(yuǎn)程幀),關(guān)從機(jī)。
ORD7:修改從機(jī)參數(shù)(數(shù)據(jù)幀),無廣播形式,主機(jī)發(fā)送從機(jī)執(zhí)行。
ORD8~ORDF為預(yù)留命令碼。
2 MWCPro協(xié)議在大陣列磁控管控制系統(tǒng)中的實(shí)現(xiàn)
2.1 硬件實(shí)現(xiàn)
通過對比目前市場上常見的各種芯片,最終選擇意法半導(dǎo)體公司的STM32F103VBT6作為主芯片,該芯片為基于ARM Cortex-M3核心的32位控制器,它的突出優(yōu)點(diǎn)是:內(nèi)核結(jié)構(gòu)先進(jìn)、功耗控制優(yōu)秀、接口豐富、處理速度高、全系列軟件與封裝高度兼容、性價比高等。
2.2 軟件實(shí)現(xiàn)
整個系統(tǒng)屬于主從控制,除了主動報警,從機(jī)只能被動地按主機(jī)的要求進(jìn)行操作。軟件部分實(shí)現(xiàn)流程如圖2。
3 協(xié)議應(yīng)用
實(shí)際應(yīng)用中,共有9個微波發(fā)射終端,分為三組,每組三個從機(jī),上位機(jī)采用運(yùn)行WinCE系統(tǒng)的觸摸屏。人機(jī)界面如圖3所示。主要頁面有微波控制、實(shí)時曲線、溫度曲線設(shè)置、選項(xiàng)參數(shù)、溫度記錄以及事件記錄共六項(xiàng)。在微波監(jiān)控界面可以看到系統(tǒng)分為手動模式和自動模式,手動模式下可以自主選擇需要開啟的從機(jī),通過手動開關(guān)微波發(fā)射終端控制各段爐溫;自動模式下默認(rèn)啟動所有處于啟用狀態(tài)的從機(jī),自動啟動和停止相關(guān)微波發(fā)射終端來控制各段爐溫處于設(shè)定溫度范圍內(nèi)。該系統(tǒng)根據(jù)材料燒結(jié)工藝將爐身分為四個溫區(qū):預(yù)熱段、燒結(jié)段1、燒結(jié)段2和緩冷段。圖3所示系統(tǒng)當(dāng)前工作在手動模式,啟動了預(yù)熱段A組的1和2號、燒結(jié)段I以及燒結(jié)段II的所有從機(jī)(緩冷段不需要加熱)。通過此界面可顯示以下6項(xiàng)報警:地址沖突、爐門、冷卻水、過流、欠流及超溫。
該系統(tǒng)具有以下特點(diǎn):
(1)采用時間觸發(fā)與事件觸發(fā)相結(jié)合的方式,將周期的數(shù)據(jù)請求幀與非周期的報警信息幀分別進(jìn)行處理,大大提高了系統(tǒng)的靈活性和實(shí)時性。在該協(xié)議運(yùn)行過程中,數(shù)據(jù)傳送穩(wěn)定、報警及時,基本達(dá)到設(shè)計要求,系統(tǒng)實(shí)用可靠。
(2)相比之前的PLC+觸摸屏的控制系統(tǒng),CAN總線的控制方法不僅簡單高效,還大大降低了控制系統(tǒng)的成本。
該控制系統(tǒng)采用觸摸屏作為上位機(jī),但觸摸屏本身不具備CAN接口,這時就需要轉(zhuǎn)換。根據(jù)系統(tǒng)需求及低成本、通用性等因素的綜合考慮,最終選擇利用STM32-
F103VBT6內(nèi)部的串口作為與觸摸屏通信的接口,采用Modbus協(xié)議,即在芯片內(nèi)部實(shí)現(xiàn)CAN/RS232的轉(zhuǎn)換,它既能滿足系統(tǒng)需求,又不會增加額外的成本,并且大多數(shù)單片機(jī)都有RS232接口,通用性較強(qiáng)。使用過程中CAN/RS232的內(nèi)部轉(zhuǎn)換能夠滿足系統(tǒng)對實(shí)時性的要求。
上述觸摸屏控制系統(tǒng)在從機(jī)數(shù)目較多或者單機(jī)信息交換量較大的情況下,限于RS232的速率,有可能會造成數(shù)據(jù)堵塞。解決這個問題可以采用以下途徑:采用PC機(jī)加CAN/USB或CAN/PCI轉(zhuǎn)換接口代替觸摸屏加CAN/RS232,因?yàn)镽S232的最大傳輸速率只有115.2 kb/s,而USB2.0的傳輸速率為480 Mb/s,為RS232的4 266倍;PCI的速率更是可以達(dá)到1 064 Mb/s,為RS232的9 457倍。因此這兩種途徑可以很好地解決數(shù)據(jù)堵塞問題。同時由于PC機(jī)可以直連的從機(jī)為110個(CAN總線本身性質(zhì)的限制),如果要繼續(xù)擴(kuò)展,加網(wǎng)控器[6]就可以使掛接的從機(jī)數(shù)成倍增加。即使是超大矩陣終端系統(tǒng),采用以上兩種方案也完全可以實(shí)現(xiàn)實(shí)時控制。
基于MWCPro應(yīng)用層協(xié)議的CAN總線控制系統(tǒng)在實(shí)際應(yīng)用中數(shù)據(jù)傳輸速度快、配置靈活,整個系統(tǒng)運(yùn)行穩(wěn)定。雖然MWCPro協(xié)議是針對微波控制領(lǐng)域設(shè)計的,但是它的命令碼和功能碼便于修改,系統(tǒng)容易擴(kuò)展,所以該協(xié)議也可以在其他較為簡單獨(dú)立的控制系統(tǒng)中使用,具有較強(qiáng)的實(shí)用性與通用性。
參考文獻(xiàn)
[1] 劉文國,胡安,楊正新,等.基于Windows CE的大功率微 波嵌入式控制系統(tǒng)的研究[J].電子技術(shù)應(yīng)用,2010,36 (8):41-43.
[2] Robert Bosch GmbH. Bosch CAN Specification Version 2.0. 1991.
[3] CiA CANOpen DS301_V04000201.2002.
[4] 廣州周立功單片機(jī)發(fā)展有限公司.DeviceNetTM規(guī)范簡介. 2004.
[5] 廣州致遠(yuǎn)有限公司.iCAN協(xié)議規(guī)范 Rev1.01.2007.
[6] 徐超,曾锃,楊正新,等.工業(yè)應(yīng)用領(lǐng)域CAN/RS232接口的現(xiàn)狀與未來[J].機(jī)電一體化,2010,16(4):18-20.