王文海,劉 慶
1 引言
HS2000 VSI三取二計(jì)算機(jī)聯(lián)鎖系統(tǒng)是一種適用于大、中、小型車站的高性能車站聯(lián)鎖設(shè)備,其核心是采用北京和利時(shí)系統(tǒng)工程股份有限公司生產(chǎn)的三取二系統(tǒng),由3套結(jié)構(gòu)完全相同的嵌入式微機(jī)組成,輸入輸出模板均帶有智能型CPU,可帶電插拔,互為主備。并且采用了雙斷回讀技術(shù),進(jìn)一步提高了系統(tǒng)的可靠性和安全性。
HS2000 VSI使用雙冗余ARCNET網(wǎng)絡(luò)技術(shù),構(gòu)成網(wǎng)橋的熱備,不但可靠性高、造價(jià)低,還能實(shí)現(xiàn)遠(yuǎn)距離通信,是一種值得推廣應(yīng)用的計(jì)算機(jī)控制系統(tǒng)的通信方式。下面對(duì)這一技術(shù)作一簡(jiǎn)介。
2 網(wǎng)絡(luò)構(gòu)成
HS2000 VSI的系統(tǒng)網(wǎng)絡(luò)應(yīng)用ARCNET網(wǎng),為典型的令牌總線網(wǎng)。聯(lián)鎖計(jì)算機(jī)、操作員站和歷史站之間通過(guò)該網(wǎng)絡(luò)進(jìn)行數(shù)據(jù)通訊。
HS2F20令牌總線網(wǎng)絡(luò)接口板采用工業(yè)標(biāo)準(zhǔn)的PC/104XT BUS與CPU板相連接,其功能是為HS2000 VSI系統(tǒng)現(xiàn)場(chǎng)控制站的主控模塊提供ARCNET網(wǎng)絡(luò)支持。
HS2F20板中具有兩個(gè)ARCNET網(wǎng)絡(luò)控制器和收發(fā)器,能夠支持并行或冗余的雙網(wǎng)結(jié)構(gòu)。HS2F20板的技術(shù)參數(shù)見(jiàn)表1。
表1
參數(shù) |
技術(shù)指標(biāo) |
網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu) |
總線型 |
網(wǎng)絡(luò)控制器、收發(fā)器數(shù)量 |
2個(gè) |
數(shù)據(jù)鏈路取送控制協(xié)議 |
符合IEEE802.4標(biāo)準(zhǔn) |
網(wǎng)絡(luò)最大節(jié)點(diǎn)數(shù) |
255個(gè) |
數(shù)據(jù)傳輸速率 |
2.5Mbps |
傳輸介質(zhì) |
RG-62A/U 93Ω同軸電纜 |
光纖 |
用ARCNET光端機(jī),距離可達(dá)8公里以上 |
節(jié)點(diǎn)間最大傳輸距離 |
300m |
網(wǎng)卡與CPU板接口 |
工業(yè)標(biāo)準(zhǔn)PC/104/XT BUS |
電源要求 |
+5V,900mA |
工作溫度 |
0~ +70℃ |
工作濕度 |
90%,無(wú)冷凝 |
物理尺寸(mm) |
120´ 130 |
HS2F20令牌總線網(wǎng)絡(luò)接口板邏輯組成,如圖1所示。HS2F20接口板還包括中斷選擇跳線器陣、引導(dǎo)ROM插座、指示燈電路以及直流電源電壓變換電路。
圖1 HS2F20令牌總線網(wǎng)絡(luò)接口板邏輯框圖
圖1中PROM為8K字節(jié)的存儲(chǔ)器,用以裝入網(wǎng)絡(luò)引導(dǎo)固件。其地址范圍排放在2K RAM的地址范圍之后的8K空間內(nèi)。
網(wǎng)絡(luò)控制器COM90C66內(nèi)部的2K RAM是雙口存儲(chǔ)器,主機(jī)CPU把發(fā)送的信息裝入存儲(chǔ)器的發(fā)送緩沖區(qū)。當(dāng)本節(jié)點(diǎn)持有令牌時(shí),向目標(biāo)節(jié)點(diǎn)先發(fā)送空閑緩沖區(qū)查詢幀,得到肯定回答后,立即發(fā)送信息幀。若得到否定回答,令牌向邏輯環(huán)的下一個(gè)節(jié)點(diǎn)傳遞,等待下一輪令牌的到達(dá),再進(jìn)行“空閑緩沖區(qū)查詢幀”發(fā)送操作。
COM90C66如果接收到幀信息后,將信息存放在雙口存儲(chǔ)器中接收緩沖區(qū)內(nèi),設(shè)置標(biāo)志位并向CPU發(fā)中斷。主機(jī)CPU接收到中斷后,即可以對(duì)接收到的信息進(jìn)行處理。
COM90C66采用20MHz的晶振頻率提供時(shí)序操作。如果網(wǎng)絡(luò)數(shù)據(jù)傳輸速率希望降低到1MHz,可以改用8MHz的晶振。晶振的頻率精度應(yīng)優(yōu)于0.2‰。
網(wǎng)卡中有四個(gè)指示燈,分為兩組。每組分別有一紅色和綠色指示燈,用于指示一路CAN通訊通道的運(yùn)行狀態(tài)。當(dāng)宿主CPU通過(guò)PC/104/XT BUS 訪問(wèn)COM90C66的雙口存儲(chǔ)器和寄存器時(shí),綠色發(fā)光LED點(diǎn)亮726µs,發(fā)送信息時(shí),紅色發(fā)光LED點(diǎn)亮400ms。
3 工作原理
ARCNET局域網(wǎng),其數(shù)據(jù)鏈路取送控制層采用 TOKEN PASSING(令牌傳遞)技術(shù),屬于TOKEN PASSING類型實(shí)時(shí)網(wǎng)絡(luò)。
ARCNET局域網(wǎng)基本上是總線拓?fù)浣Y(jié)構(gòu),同時(shí)也支持星型網(wǎng)絡(luò)結(jié)構(gòu)。在實(shí)際應(yīng)用中具有較好的靈活性,獲得了廣泛應(yīng)用。
ARCNET局域網(wǎng)可以采用多種傳輸介質(zhì),如同軸電纜、雙絞線電纜以及光導(dǎo)纖維。HS2F20板采用同軸電纜作為傳輸介質(zhì)。
ARCNET局域網(wǎng)接口板可以直接通過(guò)BNC T型接頭掛在總線上,也可以通過(guò)有源HUB(集線器)或無(wú)源HUB連接到總線上。通過(guò)有源HUB時(shí),每一段ARCNET網(wǎng)絡(luò)線長(zhǎng)度可達(dá)600m。ARCNET網(wǎng)絡(luò)允許10臺(tái)HUB級(jí)連,因此整個(gè)系統(tǒng)的網(wǎng)絡(luò)線最長(zhǎng)可達(dá)6 700m,接入的接點(diǎn)數(shù)最多達(dá)255個(gè)。
ARCNET局域網(wǎng)在傳輸信息前,首先訪問(wèn)目標(biāo)節(jié)點(diǎn)是否有空閑緩沖區(qū)用來(lái)接收信息,這樣可以有效地避免信息的丟失以及重傳操作,從而提高了信息的傳輸效率。
在令牌傳遞方式的數(shù)據(jù)鏈路取送控制協(xié)議中,令牌按一定的順序從一個(gè)節(jié)點(diǎn)傳遞到另一個(gè)節(jié)點(diǎn)。持有令牌的節(jié)點(diǎn)可以向網(wǎng)絡(luò)傳輸介質(zhì)發(fā)送信息,保證了網(wǎng)絡(luò)傳輸介質(zhì)的分時(shí)復(fù)用特性。
ARCNET局域網(wǎng)信息傳輸?shù)木幋a方式為雙脈沖方式。對(duì)于傳號(hào),發(fā)出兩個(gè)連續(xù)的寬度為100ns的脈沖,經(jīng)緩沖和低通濾波后,變成雙極性的諧波脈沖。對(duì)應(yīng)邏輯1;對(duì)于空號(hào),則無(wú)雙極性的諧波脈沖表示,對(duì)應(yīng)邏輯0。這種雙極性的諧波脈沖傳輸?shù)膬?yōu)點(diǎn)是:① 比基帶傳輸所占用的帶寬要窄,可以獲得較好的信噪比;② 防止同軸電纜兩導(dǎo)體之間電荷積累,減少傳輸過(guò)程中碼間干擾。
(1) ARCNET局域網(wǎng)的幀結(jié)構(gòu)
傳輸?shù)男畔▋煞N形式:長(zhǎng)包為512個(gè)字節(jié);短包為256個(gè)字節(jié)。
每個(gè)傳輸?shù)淖止?jié)占用11個(gè)位(8+3),因此傳輸1個(gè)字節(jié)要用4.4µs的時(shí)間。
幀的結(jié)構(gòu)有以下幾種:
① 邀請(qǐng)發(fā)送(令牌傳遞)
ALERT BURST EOT DID DID
ALERT BURST為01111110BIN形式的幀開(kāi)端前導(dǎo)碼;EOT為04HEX形式發(fā)送的結(jié)束控制碼;DID為ARCNET目標(biāo)節(jié)點(diǎn)地址。
這種形式的幀只是為了讓TOEKN通過(guò)本節(jié)點(diǎn)。
② 空閑緩沖區(qū)查詢
ALERT BURST ENQ DID DID
ENQ為85 HEX空閑緩沖區(qū)查詢控制碼。
這種形式的幀表示查詢目標(biāo)節(jié)點(diǎn)接收信息的緩沖區(qū)是否空閑。該幀需要目標(biāo)節(jié)點(diǎn)的網(wǎng)絡(luò)控制器給予回答。
③ 接收應(yīng)答幀
ALERT BURST ACK
ACK為86 HEX肯定回答控制碼;ANK為15 HEX否定回答控制碼。
當(dāng)目標(biāo)節(jié)點(diǎn)的網(wǎng)絡(luò)控制器接收到空閑緩沖區(qū)查詢幀后,若接收緩沖器不忙碌,即回答ACK幀,發(fā)查詢幀的節(jié)點(diǎn)立即將信息發(fā)出;若接收緩沖器忙碌,表示暫時(shí)不接收,發(fā)查詢幀的節(jié)點(diǎn)將令牌下傳。
④ 信息幀
SOH為01 HEX形式的信息起始傳送控制碼;SID為發(fā)送信息的源節(jié)點(diǎn)地址;DID為接收信息的目標(biāo)節(jié)點(diǎn)地址。DID=0為廣播方式;COUNT:設(shè)DATA字段的長(zhǎng)度為N,對(duì)長(zhǎng)包COUNT=512-N,對(duì)短包COUNT=256-N;DATA為傳輸?shù)男畔⑿蛄校籆RC為循環(huán)冗余校驗(yàn)碼,采用多項(xiàng)式X16+X15+X2+1的形式。
(2) 令牌傳送及網(wǎng)絡(luò)邏輯環(huán)重構(gòu)
ARCNET的令牌傳遞是從低ID節(jié)點(diǎn)向高ID節(jié)點(diǎn)依次傳遞,然后再?gòu)淖罡逫D節(jié)點(diǎn)傳遞到最低ID節(jié)點(diǎn),構(gòu)成一個(gè)邏輯環(huán)。節(jié)點(diǎn)發(fā)送令牌后,開(kāi)始計(jì)時(shí)74µs,(按ET0=1、ET1=1配置)在74µs內(nèi)如果沒(méi)有收到回答信息,持有令牌的節(jié)點(diǎn)將它的NID值加1,然后重發(fā)令牌,直到有一個(gè)節(jié)點(diǎn)響應(yīng)為止。持有令牌的節(jié)點(diǎn)將響應(yīng)的節(jié)點(diǎn)作為它的邏輯環(huán)中的下一個(gè)節(jié)點(diǎn)。
圖2 網(wǎng)絡(luò)控制器COM90C66的內(nèi)部框圖
當(dāng)一個(gè)節(jié)點(diǎn)檢測(cè)到總線空閑78µs時(shí),該節(jié)點(diǎn)必須重構(gòu)邏輯環(huán)。原因是某節(jié)點(diǎn)掉電或出現(xiàn)故障,令牌無(wú)法沿邏輯環(huán)傳遞下去。
當(dāng)一個(gè)節(jié)點(diǎn)檢測(cè)到總線空閑840ms沒(méi)有收到令牌或節(jié)點(diǎn)加電初始化,網(wǎng)絡(luò)控制器COM90C66將連續(xù)發(fā)出765個(gè)脈沖串(含8個(gè)傳號(hào)和1個(gè)空號(hào)),破壞總線上令牌的傳遞,引起邏輯環(huán)的重構(gòu)。該功能使節(jié)點(diǎn)退出或加入網(wǎng)絡(luò)非常方便。
(3) 網(wǎng)絡(luò)控制器COM90C66
HS2F20接口板上的ARCNET網(wǎng)絡(luò)控制器COM90C66由微序列控制器、內(nèi)部寄存器、總線接口電路、重構(gòu)定時(shí)器、時(shí)鐘、節(jié)點(diǎn)ID電路、收發(fā)邏輯電路以及2K RAM構(gòu)成。
圖2出示了網(wǎng)絡(luò)控制器COM90C66的內(nèi)部框圖。
(4) 收發(fā)器邏輯電路
COM90C66發(fā)送信息時(shí),產(chǎn)生兩個(gè)不同相位的脈沖PULSE1/PULSE2驅(qū)動(dòng)網(wǎng)絡(luò)收發(fā)器HYC9058(HYC9068、HYC9088)。有關(guān)網(wǎng)絡(luò)收發(fā)器工作的波形如圖3所示。HYC9058產(chǎn)生雙脈沖信號(hào),經(jīng)射頻(RF)變壓器耦合到傳輸介質(zhì)上。HYC9058把傳輸介質(zhì)上的雙脈沖信號(hào),經(jīng)射頻變壓器耦合進(jìn)來(lái),經(jīng)低通濾波整形轉(zhuǎn)換成COM90C66的RXIN引腳所需要的非歸零(NRZ)編碼脈沖信號(hào)。
圖3 雙脈沖產(chǎn)生及接收的波形圖
4 結(jié)語(yǔ)
由于Arcnet網(wǎng)絡(luò)技術(shù)數(shù)據(jù)傳輸可靠,又是雙冗余結(jié)構(gòu),可確保其可靠工作。因此,得到現(xiàn)場(chǎng)用戶的歡迎,值得推廣應(yīng)用。