亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

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

        2010-08-24 01:46:50
        制造業(yè)自動(dòng)化 2010年15期
        關(guān)鍵詞:子網(wǎng)緩沖區(qū)中斷

        馮 林

        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)量的四分之一左右,素有“鈾都”之稱。目前主要的礦區(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和看門狗等部分。網(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)控器的看門狗部分使用的一片X25045。X25045除具有看門狗和上電復(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)查詢命令的修改等等。如圖4所示,為網(wǎng)控器接收服務(wù)器數(shù)據(jù)中斷處理程序流程圖。

        在中斷處理程序中真正復(fù)雜的地方還是數(shù)據(jù)的接收部分。在數(shù)據(jù)接收前,要根據(jù)接收數(shù)據(jù)的長(zhǎng)度判斷接收緩沖區(qū)是否會(huì)溢出。若會(huì)溢出,則判斷是否狀態(tài)查詢命令,是則置位請(qǐng)求狀態(tài)標(biāo)志,對(duì)于接收的其它數(shù)據(jù)幀則丟棄。若緩沖區(qū)不會(huì)溢出,則接收服務(wù)器數(shù)據(jù)。接收服務(wù)器數(shù)據(jù)后取出命令字節(jié),判斷是否網(wǎng)控器狀態(tài)查詢命令,若是則置位請(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)查詢命令,再判斷是否子網(wǎng)狀態(tài)查詢命令,若是子網(wǎng)狀態(tài)查詢命令,則在置請(qǐng)求狀態(tài)標(biāo)志的同時(shí)將子網(wǎng)查詢命令修改為窗口機(jī)查詢命令(因?yàn)樽泳W(wǎng)狀態(tài)查詢命令在要求網(wǎng)控器返回其狀態(tài)的同時(shí),還要求其所連子網(wǎng)中各窗口機(jī)也返回自身狀態(tài),所以網(wǎng)控器要向其所連子網(wǎng)各窗口機(jī)采用廣播方式發(fā)送一條狀態(tài)查詢命令。采用這種方式,提高了服務(wù)器對(duì)各網(wǎng)絡(luò)設(shè)備進(jìn)行狀態(tài)查詢的效率)。若不是子網(wǎng)狀態(tài)查詢命令,則不作處理,只進(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ī)模的信息管理提供了一種操作方便而又性價(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.

        猜你喜歡
        子網(wǎng)緩沖區(qū)中斷
        嵌入式系統(tǒng)環(huán)形緩沖區(qū)快速讀寫方法的設(shè)計(jì)與實(shí)現(xiàn)
        一種簡(jiǎn)單子網(wǎng)劃分方法及教學(xué)案例*
        子網(wǎng)劃分問(wèn)題研究及應(yīng)用
        跟蹤導(dǎo)練(二)(5)
        千里移防,衛(wèi)勤保障不中斷
        解放軍健康(2017年5期)2017-08-01 06:27:44
        子網(wǎng)劃分的簡(jiǎn)易方法
        關(guān)鍵鏈技術(shù)緩沖區(qū)的確定方法研究
        基于安全協(xié)議的虛擬專用子網(wǎng)研究
        河南科技(2014年16期)2014-02-27 14:13:04
        AT89C51與中斷有關(guān)的寄存器功能表解
        地理信息系統(tǒng)繪圖緩沖區(qū)技術(shù)設(shè)計(jì)與實(shí)現(xiàn)
        破了亲妺妺的处免费视频国产| 女同中文字幕在线观看| 亚洲国产精品免费一区| 久久久精品国产亚洲av网不卡| 日本女优免费一区二区三区| 久久久精品人妻一区二区三区四区| 粗大的内捧猛烈进出看视频| 久久综合给合综合久久| 日本不卡在线视频二区三区| 亚洲羞羞视频| 久久久久久一级毛片免费无遮挡| 成人综合激情自拍视频在线观看| 亚洲av久播在线一区二区| 免费人妻无码不卡中文字幕18禁| 久久精品国产丝袜| 日本a在线天堂| 性感人妻av在线播放| 日本不卡的一区二区三区中文字幕 | 婷婷综合另类小说色区| 日本乱子人伦在线视频| 国产午夜福利精品| 亚洲AV无码乱码一区二区三区| 亚洲av色香蕉第一区二区三区| 美女视频在线观看亚洲色图| 国产精品国产三级国av在线观看| 久久无码精品精品古装毛片| av无码特黄一级| 中文字幕一区二区三区日日骚| 国产区女主播在线观看| 男女高潮免费观看无遮挡 | 日本久久久免费高清| 亚洲不卡av二区三区四区| 国产综合色在线精品| 无码人妻精品一区二区三区免费| 手机AV片在线| 91成人黄色蘑菇视频| 久久国产精品99精品国产| 亚洲av日韩av无码av| 麻豆国产AV网站| 中国少妇久久一区二区三区| 久久无码人妻一区二区三区午夜|