999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于CAN的網(wǎng)控器的設(shè)計(jì)

2010-08-24 01:46:50
制造業(yè)自動(dòng)化 2010年15期

馮 林

FENG Lin

(東華理工大學(xué),撫州 344000)

0 引言

中核撫州金安鈾業(yè)有限公司是我國(guó)第一批開(kāi)發(fā)建設(shè)的鈾礦山之一。主要從事鈾礦的采冶,用于國(guó)防軍工和核電發(fā)展,現(xiàn)已建成具備采礦、選礦、水冶綜合生產(chǎn)能力及社會(huì)職能齊全的鈾礦冶聯(lián)合企業(yè),天然鈾年產(chǎn)量占全國(guó)產(chǎn)量的四分之一左右,素有“鈾都”之稱(chēng)。目前主要的礦區(qū)有:山南工區(qū)、鄒家山工區(qū)、沙洲工區(qū),它們彼此相距2至3公里。

由于礦區(qū)地理位置分散,相隔較遠(yuǎn), 礦區(qū)面積不斷擴(kuò)大,各消費(fèi)點(diǎn)又非常分散,需要有一種網(wǎng)絡(luò)設(shè)備能將各消費(fèi)點(diǎn)與服務(wù)器連接起來(lái),實(shí)現(xiàn)消費(fèi)信息的高效實(shí)時(shí)傳輸。這樣的網(wǎng)絡(luò)設(shè)備一般采用的網(wǎng)控器,本文提出了采用CAN網(wǎng)控器的方案。系統(tǒng)中所設(shè)計(jì)的CAN網(wǎng)控器不僅具有中繼的功能,而且具有一定的網(wǎng)橋功能,它充分利用了CAN總線控制器可靈活配置的特點(diǎn),在兩個(gè)CAN子網(wǎng)之間實(shí)現(xiàn)報(bào)文的過(guò)濾,使各個(gè)子網(wǎng)都能高效運(yùn)轉(zhuǎn),而這些對(duì)于各CAN節(jié)點(diǎn)和服務(wù)器而言都是透明的。

本文重點(diǎn)介紹我們研制的基于CAN的網(wǎng)控器的設(shè)計(jì)。

1 網(wǎng)控器的硬件設(shè)計(jì)

CAN網(wǎng)控器是系統(tǒng)組網(wǎng)的關(guān)鍵設(shè)備之一,它不僅僅是網(wǎng)控器,而且具有一定的網(wǎng)橋功能。因?yàn)橹灰獙?duì)網(wǎng)控器的初始化參數(shù)進(jìn)行適當(dāng)配置,就能使網(wǎng)控器既具有報(bào)文轉(zhuǎn)發(fā)功能,又具有報(bào)文過(guò)濾功能。如圖1所示,CAN網(wǎng)控器主要由89C58和兩路CAN控制器接口組成,89C58作為CAN網(wǎng)控器的微控制器,負(fù)責(zé)整個(gè)網(wǎng)控器的監(jiān)控任務(wù)。兩路CAN控制器接口電路基本相同,都是由CAN通信控制器SJA1000,光電耦合電路和CAN總線收發(fā)器82C250組成。兩路CAN接口的CAN總線收發(fā)器都采用帶隔離的DC/DC模塊單獨(dú)供電。這樣就不僅實(shí)現(xiàn)了兩路CAN接口之間的電氣隔離,也實(shí)現(xiàn)了網(wǎng)控器與CAN總線的隔離。雖然為此在一定程度上增加了網(wǎng)控器硬件的復(fù)雜性,但卻是值得的。采取隔離措施,可使故障局限在某一網(wǎng)段內(nèi),而不至于影響其它網(wǎng)段,即便于維護(hù)又保證了系統(tǒng)設(shè)備的安全。網(wǎng)控器硬件除了以上主要部分以外,還有LED指示,EEPROM和看門(mén)狗等部分。網(wǎng)控器中共設(shè)計(jì)了7個(gè)LED,一個(gè)用于網(wǎng)控器上電指示,四個(gè)用于兩路CAN接口的當(dāng)前接收和發(fā)送狀態(tài)指示,還有兩個(gè)用于兩路CAN接口的通信故障(如總線脫離)指示。這樣從網(wǎng)控器面板上LED的指示就可以基本了解網(wǎng)控器的整個(gè)運(yùn)行情況。網(wǎng)控器的看門(mén)狗部分使用的一片X25045。X25045除具有看門(mén)狗和上電復(fù)位功能以外,其內(nèi)部還集成了512個(gè)字節(jié)的EEPROM,EEPROM可用于保存網(wǎng)控器的配置參數(shù)等信息,以便于系統(tǒng)的靈活配置。

圖1 網(wǎng)控器硬件結(jié)構(gòu)框圖

2 網(wǎng)控器的軟件設(shè)計(jì)

因?yàn)榫W(wǎng)控器一旦出故障,影響的將是整個(gè)子網(wǎng)。網(wǎng)控器的軟件設(shè)計(jì)除了盡量滿足上面的要求以外,還基于這樣一個(gè)原則,就是讓網(wǎng)控器除了完成信息的過(guò)濾和中繼任務(wù)以外,使其功能盡量簡(jiǎn)化。因?yàn)橐WC服務(wù)器和窗口機(jī)之間傳輸信息的可靠性,唯有通過(guò)應(yīng)用層的端端差錯(cuò)控制才能滿足要求,而在網(wǎng)控器中加入過(guò)多的差錯(cuò)控制和流量控制功能不僅達(dá)不到目的,同時(shí)還降低了網(wǎng)控器的運(yùn)行效率,增加了故障隱患。由于網(wǎng)控器的緩沖區(qū)RAM有限,其本身又沒(méi)有流量控制功能,所以對(duì)于緩沖區(qū)滿時(shí)接收的數(shù)據(jù)幀只能采用丟棄的辦法。當(dāng)然,在總線通信正常的情況下,緩性區(qū)溢出的可能性是很小的。既使由于溢出而丟棄了后面接收到的數(shù)據(jù)幀,應(yīng)用層通信協(xié)議也可以保證端端通信的可靠性。至于網(wǎng)控器軟件的具體設(shè)計(jì),下面分幾個(gè)模塊來(lái)分別進(jìn)行說(shuō)明。

2.1 網(wǎng)控器初始化模塊

網(wǎng)控器的初始化模塊主要用于網(wǎng)控器的參數(shù)配置。網(wǎng)控器在初次使用或者由于某種特殊情況需要時(shí),都必須進(jìn)行參數(shù)的配置。如圖2所示為網(wǎng)控器初始化程序流程圖。從圖中可以看出,對(duì)于需要進(jìn)行參數(shù)配置的網(wǎng)控器,服務(wù)器在參數(shù)配置完成以前不能有通過(guò)該網(wǎng)控器發(fā)送給其它網(wǎng)控器或窗口機(jī)的數(shù)據(jù)幀,否則網(wǎng)控器就會(huì)退出參數(shù)配置狀態(tài)而進(jìn)入網(wǎng)控器正常運(yùn)行狀態(tài)。之所以這樣設(shè)計(jì),主要是考慮網(wǎng)控器需要進(jìn)行參數(shù)配置的情況很少,平時(shí)服務(wù)器只須任意發(fā)送一幀通過(guò)網(wǎng)控器的信息,就可以啟動(dòng)網(wǎng)控器進(jìn)入正常運(yùn)行狀態(tài)。而不必象窗口機(jī)那樣要求開(kāi)機(jī)命令,這樣網(wǎng)控器對(duì)于用戶來(lái)說(shuō)才是真正透明的。網(wǎng)控器在完成了參數(shù)配置時(shí),必須將配置成功與否的消息返回給服務(wù)器作相應(yīng)處理。

2.2 網(wǎng)控器監(jiān)控模塊

網(wǎng)控器的接收采用的是外部中斷方式接收,發(fā)送是在監(jiān)控程序中完成的。如圖3所示為網(wǎng)控器監(jiān)控程序流程圖。監(jiān)控程序根據(jù)接收緩沖區(qū)中是否有數(shù)據(jù),決定是否發(fā)送以及發(fā)送給誰(shuí)。如接收服務(wù)器數(shù)據(jù)緩沖區(qū)中有數(shù)據(jù)則向子網(wǎng)轉(zhuǎn)發(fā),如接收窗口機(jī)數(shù)據(jù)緩沖區(qū)中有數(shù)據(jù)則向服務(wù)器轉(zhuǎn)發(fā)。另外在主監(jiān)控程序中對(duì)任一方CAN總線脫離的情況也作了處理,脫離標(biāo)志的建立和清除都是在中斷處理程序中完成的。當(dāng)任一方CAN控制器的發(fā)送錯(cuò)誤計(jì)數(shù)器(TXERR)大于或等于256時(shí),都會(huì)進(jìn)入總線脫離狀態(tài)。進(jìn)入總線脫離狀態(tài)的節(jié)點(diǎn),只有在將方式寄存器(MODE)中的Reset Request位清0(因?yàn)榭偩€脫離后Reset Request位會(huì)自動(dòng)變?yōu)?),并監(jiān)測(cè)到總線上128次11個(gè)連續(xù)的隱性位發(fā)生后,才可以由總線脫離狀態(tài)再次進(jìn)入錯(cuò)誤激活狀態(tài)。當(dāng)CAN總線脫離時(shí),說(shuō)明總線錯(cuò)誤已非常嚴(yán)重,網(wǎng)控器碰到這種情況則將緩沖區(qū)全部清除,并對(duì)未脫離方隨后接收到的數(shù)據(jù)也采用丟棄的辦法。同時(shí),在主監(jiān)控程序中對(duì)允許脫離的次數(shù)也作了一個(gè)限制,最多不能超過(guò)三次,這樣可以避免某些確已被嚴(yán)重干擾的節(jié)點(diǎn)影響到其它正常節(jié)點(diǎn)的工作。

2.3 中斷處理模塊

網(wǎng)控器的外部中斷共有兩個(gè),包括接收服務(wù)器數(shù)據(jù)中斷和接收窗口機(jī)數(shù)據(jù)中斷。接收服務(wù)器數(shù)據(jù)中斷相對(duì)要復(fù)雜一些,因?yàn)楸仨毺幚矸?wù)器發(fā)來(lái)的相關(guān)命令。在本節(jié)中就以接收服務(wù)器數(shù)據(jù)中斷為例進(jìn)行分析。

圖2 網(wǎng)控器初始化程序流程圖

圖3 網(wǎng)控器監(jiān)控程序流程圖

圖4 網(wǎng)控器中斷處理程序流程圖(接收服務(wù)器數(shù)據(jù))

實(shí)際上網(wǎng)控器的大部分工作是在中斷處理程序中完成的,包括數(shù)據(jù)的接收,脫離標(biāo)志的建立和清除,脫離后Reset Request位的清0,請(qǐng)求狀態(tài)標(biāo)志的建立和子網(wǎng)狀態(tài)查詢(xún)命令的修改等等。如圖4所示,為網(wǎng)控器接收服務(wù)器數(shù)據(jù)中斷處理程序流程圖。

在中斷處理程序中真正復(fù)雜的地方還是數(shù)據(jù)的接收部分。在數(shù)據(jù)接收前,要根據(jù)接收數(shù)據(jù)的長(zhǎng)度判斷接收緩沖區(qū)是否會(huì)溢出。若會(huì)溢出,則判斷是否狀態(tài)查詢(xún)命令,是則置位請(qǐng)求狀態(tài)標(biāo)志,對(duì)于接收的其它數(shù)據(jù)幀則丟棄。若緩沖區(qū)不會(huì)溢出,則接收服務(wù)器數(shù)據(jù)。接收服務(wù)器數(shù)據(jù)后取出命令字節(jié),判斷是否網(wǎng)控器狀態(tài)查詢(xún)命令,若是則置位請(qǐng)求狀態(tài)標(biāo)志,不進(jìn)行緩沖區(qū)參數(shù)調(diào)整(因?yàn)槭欠?wù)器發(fā)送給網(wǎng)控器的命令,只要求網(wǎng)控器作出響應(yīng),不要求其轉(zhuǎn)發(fā),所以不能放入緩沖區(qū)中)。若不是網(wǎng)控器狀態(tài)查詢(xún)命令,再判斷是否子網(wǎng)狀態(tài)查詢(xún)命令,若是子網(wǎng)狀態(tài)查詢(xún)命令,則在置請(qǐng)求狀態(tài)標(biāo)志的同時(shí)將子網(wǎng)查詢(xún)命令修改為窗口機(jī)查詢(xún)命令(因?yàn)樽泳W(wǎng)狀態(tài)查詢(xún)命令在要求網(wǎng)控器返回其狀態(tài)的同時(shí),還要求其所連子網(wǎng)中各窗口機(jī)也返回自身狀態(tài),所以網(wǎng)控器要向其所連子網(wǎng)各窗口機(jī)采用廣播方式發(fā)送一條狀態(tài)查詢(xún)命令。采用這種方式,提高了服務(wù)器對(duì)各網(wǎng)絡(luò)設(shè)備進(jìn)行狀態(tài)查詢(xún)的效率)。若不是子網(wǎng)狀態(tài)查詢(xún)命令,則不作處理,只進(jìn)行緩沖區(qū)參數(shù)調(diào)整,接收數(shù)據(jù)有效。隨后是釋放CAN接收緩沖區(qū),恢復(fù)現(xiàn)場(chǎng)和中斷返回等工作。

3 結(jié)束語(yǔ)

按上述方法設(shè)計(jì)的網(wǎng)控器已成功應(yīng)用于某地質(zhì)采礦單位“一卡通”設(shè)計(jì)方案中,該系統(tǒng)已運(yùn)行多年,非常穩(wěn)定,取得了較好的經(jīng)濟(jì)效益,具有推廣的價(jià)值。

本文創(chuàng)新點(diǎn):論文首次設(shè)計(jì)了基于普通單片機(jī)的CAN網(wǎng)控器,該網(wǎng)控器是“一卡通”底層網(wǎng)絡(luò)設(shè)計(jì)的關(guān)鍵設(shè)備,它提高了網(wǎng)絡(luò)設(shè)計(jì)的靈活性,極大的擴(kuò)展了其應(yīng)用范圍。網(wǎng)控器的研制成功為較大規(guī)模的信息管理提供了一種操作方便而又性?xún)r(jià)比高的設(shè)計(jì)方案。

[1] 王愛(ài)英.智能卡技術(shù)-IC卡[M].北京:清華大學(xué)出版社,2000.

[2] 周航慈.單片機(jī)應(yīng)用程序設(shè)計(jì)技術(shù)[M].北京:北京航空航天大學(xué)出版社,1991.

[3] 李慶文,移動(dòng)環(huán)境下多數(shù)據(jù)項(xiàng)請(qǐng)求廣播時(shí)效性研究[J].微計(jì)算機(jī)信息,2010,26(21),1115-117.

[4] 汪小澄,池誠(chéng).基于S3C2410嵌入式系統(tǒng)的網(wǎng)絡(luò)接口設(shè)計(jì)[J] .微計(jì)算機(jī)信息(嵌入式與SOC),2007,23.131-133.

[5] 徐建俊,等.基于神經(jīng)元芯片MC143150和單片機(jī)AT89C51的LON節(jié)點(diǎn)研究與設(shè)計(jì)[J] .電測(cè)與儀表,2007,44(499),57-60.

主站蜘蛛池模板: 热九九精品| 欧美高清三区| 国产一区二区丝袜高跟鞋| 欧美亚洲国产精品第一页| 色综合国产| 99九九成人免费视频精品| 日韩久草视频| 91免费观看视频| 国产亚洲欧美在线视频| 亚洲国产看片基地久久1024| 久久毛片网| 玩两个丰满老熟女久久网| 亚洲国产理论片在线播放| 国产成年女人特黄特色大片免费| 5555国产在线观看| 国产麻豆福利av在线播放| 亚洲日本一本dvd高清| 欧美成人在线免费| 亚洲日本中文字幕天堂网| 丁香亚洲综合五月天婷婷| 99国产精品国产| 国产亚洲精品在天天在线麻豆 | 色窝窝免费一区二区三区| 国产精品欧美在线观看| 国产成人综合在线视频| 中文国产成人精品久久| 女人18毛片一级毛片在线 | 青青青草国产| 制服丝袜国产精品| 久久国产免费观看| 老司机午夜精品视频你懂的| 国产噜噜噜视频在线观看| 国产人前露出系列视频| 就去吻亚洲精品国产欧美| 特级精品毛片免费观看| 91av成人日本不卡三区| 蜜臀av性久久久久蜜臀aⅴ麻豆| 国产精品55夜色66夜色| 天堂岛国av无码免费无禁网站| 免费在线一区| 伊人欧美在线| 99伊人精品| 片在线无码观看| 国产99欧美精品久久精品久久| 毛片视频网址| 在线看片中文字幕| 亚洲国产精品日韩欧美一区| 久久综合伊人77777| 999精品色在线观看| 国产成人久视频免费| 精品一区二区三区中文字幕| 国产精品第一区在线观看| 亚洲三级影院| 有专无码视频| 国产99精品久久| 国产区在线看| 亚洲欧美自拍视频| 亚洲天堂777| 激情无码视频在线看| 国产农村1级毛片| 一本大道无码日韩精品影视| 性色生活片在线观看| 国产精品久久自在自线观看| 国产99视频精品免费观看9e| 色婷婷成人网| 亚洲AV无码久久精品色欲| 国产a v无码专区亚洲av| 欧美不卡二区| 日韩在线永久免费播放| 中文字幕欧美日韩高清| 国产人前露出系列视频| 亚洲人成影视在线观看| 国产成人成人一区二区| 久久亚洲国产视频| 欧美另类精品一区二区三区| 亚洲中文字幕久久无码精品A| 国产精品999在线| 国产精品第页| 91系列在线观看| 午夜小视频在线| 欧美日韩午夜视频在线观看 | 国产日韩欧美在线视频免费观看|