1 引言
目前有一定規(guī)模的學(xué)校均建有基于網(wǎng)絡(luò)的校園消費(fèi)信息管理系統(tǒng),,建立一個(gè)穩(wěn)定可靠,、擴(kuò)充和維護(hù)方便的該類系統(tǒng),,關(guān)鍵是建立一個(gè)適用于校園消費(fèi)環(huán)境的信息傳輸網(wǎng)絡(luò),。目前校園消費(fèi)信息管理系統(tǒng)底層網(wǎng)絡(luò)多采用RS-485 總線的組網(wǎng)方式,。采用RS-485 總線組網(wǎng)具有結(jié)構(gòu)簡單,、成本低等優(yōu)點(diǎn),但RS-485 總線無故障定位和錯(cuò)誤處理功能,,組網(wǎng)的靈活性不強(qiáng),。隨著互聯(lián)網(wǎng)的日益普及,也有一些學(xué)校的校園消費(fèi)信息管理系統(tǒng)采用以太網(wǎng)的組網(wǎng)方式,,將每個(gè)消費(fèi)節(jié)點(diǎn)就近聯(lián)接于校園網(wǎng)上,。這種組網(wǎng)方式的特點(diǎn)是能夠充分利用現(xiàn)有的網(wǎng)絡(luò)資源,能方便的進(jìn)行遠(yuǎn)程訪問,,但在目前情況下,,這種方式的不足是組網(wǎng)費(fèi)用較高,實(shí)時(shí)響應(yīng)能力不強(qiáng),,網(wǎng)絡(luò)完全依賴于校園網(wǎng),,而校園網(wǎng)并不能保證安全可靠。當(dāng)然,,互聯(lián)網(wǎng)具有巨大的優(yōu)勢(shì)和應(yīng)用前景,,但就傳輸信息量較小,實(shí)時(shí)性要求較高的校園消費(fèi)信息管理系統(tǒng)底層網(wǎng)絡(luò)而言,,以太網(wǎng)并非最佳選擇,。
本文提出了一種基于CAN網(wǎng)控器的性能價(jià)格比較高的校園消費(fèi)信息管理系統(tǒng)底層網(wǎng)絡(luò)設(shè)計(jì)方案。CAN總線具有傳輸速率高,,抗干擾能力強(qiáng),,硬件連接方便等突出特點(diǎn),在智能汽車,分布式信息的采集與控制等方面得到了廣泛的應(yīng)用,。將CAN總線應(yīng)用于校園消費(fèi)信息管理系統(tǒng)底層網(wǎng)絡(luò)設(shè)計(jì)中,,其組網(wǎng)成本與采用RS-485總線相當(dāng),而使用,、維護(hù)和擴(kuò)充則都更為方便,。與以太網(wǎng)相比則具有價(jià)格低、實(shí)時(shí)性好,、可靠性高等優(yōu)點(diǎn),。欲了解更多信息請(qǐng)登錄電子發(fā)燒友網(wǎng)(http://www.elecfans.com)
2 CAN 網(wǎng)控器
由于現(xiàn)在許多學(xué)校校園面積較大,各消費(fèi)點(diǎn)又非常分散,,需要有一種網(wǎng)絡(luò)設(shè)備能將各消費(fèi)點(diǎn)與服務(wù)器連接起來,,實(shí)現(xiàn)消費(fèi)信息的高效實(shí)時(shí)傳輸。這樣的網(wǎng)絡(luò)設(shè)備一般采用的是中繼器,,本文提出了采用CAN 網(wǎng)控器的方案,。系統(tǒng)中所設(shè)計(jì)的CAN 網(wǎng)控器不僅具有中繼的功能,更重要的是它充分利用了CAN 總線控制器可靈活配置的特點(diǎn),,在兩個(gè)CAN 子網(wǎng)之間實(shí)現(xiàn)報(bào)文的過濾,,使各個(gè)子網(wǎng)都能高效運(yùn)轉(zhuǎn),而這些對(duì)于各CAN 節(jié)點(diǎn)和服務(wù)器而言都是透明的,。因而,,CAN 網(wǎng)控器是校園消費(fèi)信息管理系統(tǒng)組網(wǎng)的關(guān)鍵設(shè)備,它可以提高網(wǎng)絡(luò)設(shè)計(jì)的靈活性,,極大的擴(kuò)展其使用范圍,。CAN 網(wǎng)控器由微處理器和兩路CAN 控制器接口組成,網(wǎng)控器中有E2PROM,,用于保存網(wǎng)控器的配置參數(shù)等信息,。由于通信對(duì)實(shí)時(shí)性的要求以及CAN 網(wǎng)控器所用微處理器的內(nèi)部緩存容量有限,微處理器采用了FIFO 機(jī)制來管理內(nèi)部RAM,,提高內(nèi)存使用效率,。
3 校園消費(fèi)信息管理系統(tǒng)網(wǎng)絡(luò)設(shè)計(jì)
3.1 校園消費(fèi)信息管理系統(tǒng)網(wǎng)絡(luò)結(jié)構(gòu)
校園消費(fèi)信息管理系統(tǒng)網(wǎng)絡(luò)主體由三部分構(gòu)成:消費(fèi)信息管理中心服務(wù)器,CAN 網(wǎng)控器,,網(wǎng)絡(luò)終端(包括窗口機(jī),、充值機(jī)、掛失機(jī)等),,其中CAN 網(wǎng)控器是組網(wǎng)的核心設(shè)備,。基于CAN網(wǎng)控器的校園消費(fèi)信息管理系統(tǒng)已在某大學(xué)成功得到應(yīng)用,,其網(wǎng)絡(luò)結(jié)構(gòu)如圖1 所示,。從圖中可以看出,網(wǎng)控器將窗口機(jī)等終端與服務(wù)器連結(jié)起來。在該網(wǎng)絡(luò)結(jié)構(gòu)中,,網(wǎng)控器共分兩級(jí),。一級(jí)網(wǎng)控器一端與服務(wù)器相連,另一端則與各個(gè)消費(fèi)現(xiàn)場的窗口機(jī)等終端構(gòu)成的子網(wǎng)相連,。一級(jí)網(wǎng)控器全部位于消費(fèi)信息管理中心,,采用這種方式一方面是為管理和維護(hù)提供了方便,另一方面則是由于一級(jí)網(wǎng)控器離服務(wù)器的距離都很近,,可以采用高達(dá)320Kbps 的通信速率。圖中網(wǎng)控器5 為二級(jí)網(wǎng)控器,。采用兩級(jí)網(wǎng)控器設(shè)計(jì),,使系統(tǒng)的通信距離可達(dá)5km 以上,網(wǎng)絡(luò)終端數(shù)目幾乎不受限制,。
為了提高網(wǎng)絡(luò)的可靠性,,系統(tǒng)中每個(gè)CAN 節(jié)點(diǎn)與總線之間均采用光電耦合器耦合,這樣可以有效的進(jìn)行故障隔離,,保護(hù)網(wǎng)絡(luò)設(shè)備的安全,。為了提高網(wǎng)絡(luò)的易維護(hù)性,可以充分利用CAN 總線在差錯(cuò)控制與故障處理方面的能力,,采用服務(wù)器定期查詢各網(wǎng)絡(luò)設(shè)備當(dāng)前狀態(tài)的辦法,,使服務(wù)器及時(shí)掌握整個(gè)網(wǎng)絡(luò)的當(dāng)前運(yùn)行情況,便于更好的管理和維護(hù),,網(wǎng)絡(luò)出故障時(shí)也可以用它來進(jìn)行故障定位,,及時(shí)排除故障。

圖 1 校園消費(fèi)信息管理系統(tǒng)網(wǎng)絡(luò)結(jié)構(gòu)
3.2 校園消費(fèi)信息管理系統(tǒng)網(wǎng)絡(luò)配置
校園消費(fèi)信息管理系統(tǒng)網(wǎng)絡(luò)的許多功能都是借助各CAN 通信節(jié)點(diǎn)的網(wǎng)絡(luò)通信參數(shù)的配置得以實(shí)現(xiàn)的,,這種配置有點(diǎn)類似以太網(wǎng)IP 地址的分配,。系統(tǒng)中各網(wǎng)絡(luò)設(shè)備的參數(shù)配置包括標(biāo)識(shí)符(ID)的分配,驗(yàn)收屏蔽寄存器(AMR),、驗(yàn)收碼寄存器(ACR)和波特率(BTR)等參數(shù)的設(shè)置,。網(wǎng)絡(luò)設(shè)備可通過服務(wù)器進(jìn)行參數(shù)的自動(dòng)配置,所有配置的參數(shù)均保存在服務(wù)器的數(shù)據(jù)庫中,。
如圖2 所示,,在系統(tǒng)網(wǎng)絡(luò)設(shè)備的參數(shù)配置中,重點(diǎn)考慮的一個(gè)方面是標(biāo)識(shí)符的分配,。在本系統(tǒng)中只采用了CAN 總線29 位標(biāo)識(shí)符中的21 位,,其中高8 位用作通信時(shí)的命令字節(jié)。由于一個(gè)網(wǎng)絡(luò)中標(biāo)識(shí)符的唯一性,,21 位標(biāo)識(shí)符的分配必須由服務(wù)器根據(jù)網(wǎng)絡(luò)設(shè)備所處子網(wǎng)的不同統(tǒng)一分配,,另外驗(yàn)收屏蔽寄存器(AMR)、驗(yàn)收碼寄存器(ACR)和波特率(BTR)等參數(shù)也與所處子網(wǎng)有關(guān)。
表1 21 位標(biāo)識(shí)符的分配

21 位標(biāo)識(shí)符共分4 段,,按表1 的分段方式進(jìn)行分配,,各網(wǎng)絡(luò)設(shè)備的具體ID 分配如圖2所示。服務(wù)器位于干線上,,一級(jí)網(wǎng)控器的一端接在干線上,,另一端與子網(wǎng)相連,網(wǎng)控器1和網(wǎng)控器2 均為一級(jí)網(wǎng)控器,。網(wǎng)控器3 為二級(jí)網(wǎng)控器,,二級(jí)網(wǎng)控器接在由一級(jí)網(wǎng)控器構(gòu)成的子網(wǎng)中,同時(shí)該子網(wǎng)中也接有窗口機(jī)或掛失機(jī)等終端,。系統(tǒng)采用兩級(jí)網(wǎng)絡(luò)結(jié)構(gòu),。
AMR 與ACR 的配置是與該設(shè)備的ID 相配合的,其具體配置方式如圖2 所示,。在本系統(tǒng)中,,服務(wù)器、網(wǎng)控器和終端均采用擴(kuò)展幀的單濾波方式,。采用圖2 的配置方式,,窗口機(jī)發(fā)送的信息只會(huì)由網(wǎng)控器轉(zhuǎn)發(fā)給服務(wù)器,而不會(huì)轉(zhuǎn)發(fā)到其它子網(wǎng)中,,而服務(wù)器發(fā)給窗口機(jī)的信息也只會(huì)由網(wǎng)控器轉(zhuǎn)發(fā)給窗口機(jī)所在子網(wǎng)中,,即具有報(bào)文過濾功能。波特率(BTR)的配置在圖2 中沒有提到,,它也是需要配置的一個(gè)參數(shù),,設(shè)備與所連網(wǎng)絡(luò)的波特率參數(shù)保持一致。
在服務(wù)器中有相應(yīng)的數(shù)據(jù)庫和操作界面來實(shí)現(xiàn)上述參數(shù)的配置功能,,配置時(shí)通過界面選擇設(shè)備類型和所屬服務(wù)區(qū),,由服務(wù)器根據(jù)相關(guān)規(guī)則和數(shù)據(jù)庫中存儲(chǔ)的信息生成配置信息,實(shí)現(xiàn)設(shè)備網(wǎng)絡(luò)參數(shù)的自動(dòng)配置,。

圖 2 網(wǎng)絡(luò)參數(shù)配置圖
3.3 校園消費(fèi)信息管理系統(tǒng)網(wǎng)絡(luò)性能分析
采用上述網(wǎng)絡(luò)結(jié)構(gòu)和參數(shù)配置方法設(shè)計(jì)的網(wǎng)絡(luò)充分發(fā)揮了CAN 總線的特點(diǎn),,能完全滿足校園消費(fèi)信息管理系統(tǒng)對(duì)網(wǎng)絡(luò)帶寬和實(shí)時(shí)性的要求。如圖1 所示,,由于一級(jí)網(wǎng)控器離服務(wù)器的距離都很近,,與服務(wù)器相連的干線通信速率可達(dá)320Kbps 甚至更高,這樣CAN 總線通信速度快的優(yōu)勢(shì)就充分得到了發(fā)揮,。
在網(wǎng)絡(luò)的設(shè)計(jì)過程中對(duì)其實(shí)時(shí)響應(yīng)能力進(jìn)行了反復(fù)的模擬測(cè)試,,測(cè)試時(shí)的環(huán)境如下:服務(wù)器采用PIV 2GHz HP 計(jì)算機(jī),編程語言為Delphi,,干線速度為320Kbps,,通過三臺(tái)網(wǎng)控器分別連接三臺(tái)窗口機(jī),,速度分別80Kbps、80Kbps 和40Kbps,。三臺(tái)窗口機(jī)均工作于全速模擬消費(fèi)狀態(tài),,當(dāng)服務(wù)器的響應(yīng)數(shù)據(jù)庫采用Delphi 本地?cái)?shù)據(jù)庫時(shí),響應(yīng)次數(shù)可高達(dá)120次/s 以上,,而當(dāng)數(shù)據(jù)庫為SQL Server 2000 時(shí),,響應(yīng)次數(shù)則降為60 次/s 左右。同樣的網(wǎng)絡(luò)環(huán)境,,系統(tǒng)的實(shí)時(shí)響應(yīng)能力卻相差很大,,而這主要是與服務(wù)器的響應(yīng)速度有關(guān)。通過下面的分析能夠更加清楚的明白這一點(diǎn),。
每次正常的消費(fèi)過程共包括4 幀數(shù)據(jù),,總的通信量約500bit。按響應(yīng)次數(shù)為60 次/s計(jì),,則所需帶寬為30Kbps,遠(yuǎn)小于320Kbps,。所以影響響應(yīng)次數(shù)的主要因素不是網(wǎng)絡(luò)帶寬,,而是服務(wù)器的響應(yīng)能力。在現(xiàn)有320Kbps 的帶寬下,,完全可以滿足200 次消費(fèi)/s 的網(wǎng)絡(luò)通信要求,。為了提高響應(yīng)次數(shù),應(yīng)該提高服務(wù)器的運(yùn)算速度和優(yōu)化軟件設(shè)計(jì),。
上面所講的響應(yīng)次數(shù)只是在平均意義上的系統(tǒng)響應(yīng)能力,,但具體到每一臺(tái)窗口機(jī)最能反映其實(shí)時(shí)響應(yīng)性能的是響應(yīng)延時(shí)(TR),即從窗口機(jī)向服務(wù)器提出響應(yīng)請(qǐng)求到收到服務(wù)器的響應(yīng)數(shù)據(jù)所經(jīng)過的時(shí)間。這段時(shí)間由兩部分構(gòu)成:網(wǎng)絡(luò)延時(shí)(Tn)和服務(wù)器的處理延時(shí)(Tp),。
TR= Tn + Tp (1)
要討論嚴(yán)格意義上Tp 的大小是很困難的,,而其平均值大體可由服務(wù)器的每秒響應(yīng)次數(shù)來衡量。Tp 值對(duì)于每臺(tái)窗口機(jī)而言都是相同的,,因而不同窗口機(jī)實(shí)時(shí)響應(yīng)性能的差異主要是由于Tn 的不同造成的,。K.Tindell 在其文章中對(duì)CAN 總線系統(tǒng)在最壞情況下的延時(shí)特性進(jìn)行了分析,本文中所討論的CAN 總線系統(tǒng)模型要簡單一些,。如圖1 所示,,設(shè)新食堂中的窗口機(jī)數(shù)目最多,共有40 臺(tái),,因而可能的網(wǎng)絡(luò)延時(shí)也是最大,。
窗口機(jī)m 從請(qǐng)求發(fā)送到服務(wù)器收到數(shù)據(jù)所需的時(shí)間(Rm)可由(2)式表示。
Rm= Tm + Cm (2)
式中Tm 是指發(fā)送一幀數(shù)據(jù)所需的時(shí)間,,Cm 是窗口機(jī)m 競爭獲得總線所需的時(shí)間,。Cm 的大小主要取決于窗口機(jī)標(biāo)識(shí)符(ID)的大小,,ID 越小,優(yōu)先級(jí)越高,,則Rm 越小,,反之則越大。最壞情況下的最長延時(shí)為優(yōu)先級(jí)最低(ID 最大)的窗口機(jī)(設(shè)為40 號(hào)窗口機(jī))的延時(shí),。由于消費(fèi)過程數(shù)據(jù)傳輸?shù)奶厥庑?,?yōu)先級(jí)最低的窗口機(jī)一般只須等到比其優(yōu)先級(jí)高的所有窗口機(jī)發(fā)送一幀數(shù)據(jù)即可,所以可設(shè)該窗口機(jī)在最壞情況下C40 的大小為:

(3)
設(shè)每幀數(shù)據(jù)的大小為150bit,,在通信速率為80Kbps 的情況下,,40 號(hào)窗口機(jī)在最壞情況下的Rm 約為75ms。若考慮網(wǎng)控器的轉(zhuǎn)發(fā)延時(shí)和在干線上的競爭延時(shí),,Rm 最大不會(huì)超過150ms,。而網(wǎng)絡(luò)延時(shí)Tn 最大為Rm 的兩倍,即:
Tn=2Rm≤300ms (4)
若Tp 以20ms 計(jì)算,,則響應(yīng)延時(shí)TR 最大為320ms,。這段時(shí)間對(duì)于窗口機(jī)的實(shí)際使用沒有太大的影響,而且這是在最壞情況下的延時(shí),,本身出現(xiàn)的概率就很小,,因而完全不影響實(shí)際使用。
4 結(jié)論
文章通過分析常用校園消費(fèi)信息管理系統(tǒng)網(wǎng)絡(luò)的不足,,引入了一種基于CAN 網(wǎng)控器的校園消費(fèi)信息管理系統(tǒng)網(wǎng)絡(luò)設(shè)計(jì)方案,。文章詳細(xì)分析了由CAN 網(wǎng)控器構(gòu)成的校園消費(fèi)信息管理系統(tǒng)底層網(wǎng)絡(luò)的網(wǎng)絡(luò)結(jié)構(gòu)和配置方法,對(duì)網(wǎng)絡(luò)帶寬和最壞情況下的延時(shí)等問題進(jìn)行了討論,。通過這些分析和討論,,可以看出所設(shè)計(jì)的網(wǎng)絡(luò)具有以下特點(diǎn):
●抗干擾能力強(qiáng),通信距離遠(yuǎn),,可達(dá) 3~5km
● 具有自動(dòng)配置與狀態(tài)反饋功能,使用和維護(hù)方便
●具有實(shí)時(shí)響應(yīng)能力,,最大響應(yīng)延時(shí)不超過 320ms
●可連接的網(wǎng)絡(luò)終端數(shù)目多,擴(kuò)容方便,,成本低廉
該網(wǎng)絡(luò)只是校園消費(fèi)信息管理系統(tǒng)的一個(gè)具有較高性價(jià)比的底層網(wǎng)絡(luò),,而現(xiàn)在許多學(xué)校都有多個(gè)校區(qū),這就要求網(wǎng)絡(luò)具有遠(yuǎn)程訪問能力,,這種情況可以借助互聯(lián)網(wǎng)或在校區(qū)之間架專線的辦法得以實(shí)現(xiàn),。