煤礦安全監控分站的研究
安全監控分站軟件設計
系統總體軟件結構如圖3所示。在整個(gè)軟件流程中,測頻中斷的優(yōu)先級最高,以保證測頻的精度。CAN通信的中斷優(yōu)先級次之,RS-232中斷的優(yōu)先級最低。
為保證主站與分站通信的實(shí)效性,本設計完成測頻中斷服務(wù)僅需13個(gè)機器周期,而信號的周期比機器周期大數千倍,從而大大減小了主站在測頻中斷服務(wù)期間與分站進(jìn)行通信的概率。
在本設計中,已知來(lái)自傳感器的信號的頻率范圍為200Hz~1000Hz,信號的周期為1ms~5ms,而機器周期為0.0005ms,故主站與分站在測頻中斷響應期間進(jìn)行通信的概率為0.12~0.60%,即主站與分站進(jìn)行通信的實(shí)效率為99.40~99.88%,完全能夠滿(mǎn)足安全生產(chǎn)的要求。
關(guān)鍵技術(shù)及其實(shí)現
測頻技術(shù)
通常使用的單片機的測頻方法有兩種:直接測頻法和測周期的方法。本設計中選用了測周期的方法,因為本設計中被測信號的頻率較低,用測周期的方法精度較高,而且實(shí)時(shí)性強、測頻時(shí)間短,即使主站與分站每隔400ms通信一次,也能夠完成測頻的功能。
根據頻率計算公式得到周期法測頻公式,式中,TO為定時(shí)器/計數器的計數脈沖周期時(shí)間,由單片機主脈沖經(jīng)12分頻得到,N為計數器在測周期期間的計數脈沖。當晶振振蕩頻率為24MHz時(shí),定時(shí)器的計數脈沖周期時(shí)間為0.5s,測量最大絕對誤差為信號前后邊界之差共1s。對于周期為1ms~5ms(頻率200Hz~1000Hz)的信號,最大誤差折算成頻率約為0.002Hz~0.01Hz,所以,頻率測量精度可達到0.001Hz~0.01 Hz。
CAN總線(xiàn)通訊技術(shù)
CAN 總線(xiàn)通信是整個(gè)軟件設計的重要部分。通信過(guò)程主要包括發(fā)送和接收部分,本設計中兩部分都設置成了中斷方式而不是查詢(xún)方式,可以把它們做成模塊,采用調用子程序的方式來(lái)訪(fǎng)問(wèn)。
發(fā)送子程序負責節點(diǎn)報文的發(fā)送,發(fā)送時(shí)用戶(hù)只需將待發(fā)送的數據按特定格式組合成一幀報文送入SJA1000發(fā)送緩存區中,然后啟動(dòng)SJA1000發(fā)送即可。但在往SJA1000發(fā)送緩沖區送報文之前,必須先作一些判斷。程序如下:
MOV DPTR,#CAN_SR ;狀態(tài)寄存器
WS0: MOVX A,@DPTR ;從SJA1000讀出狀態(tài)寄存器值
JNB ACC.3,WS0 ;判斷上次發(fā)送是否完成
WS1: MOVX A,@DPTR ;
JNB ACC.2,WS1 ;判斷發(fā)送區是否鎖定
CAN總線(xiàn)通訊的發(fā)送模塊根據用戶(hù)制定的應用層協(xié)議,將要發(fā)送的數據分類(lèi)、拆解、合并,確定發(fā)送對象,然后根據CAN的數據鏈路層協(xié)議填寫(xiě)到CAN數據幀的各個(gè)場(chǎng),并發(fā)送出去。發(fā)送程序分為發(fā)送遠程幀和數據幀兩種,遠程幀無(wú)數據場(chǎng)。
接收子程序負責節點(diǎn)報文的接收以及其它情況。接收子程序比發(fā)送子程序要復雜一些,因為在處理接收報文的過(guò)程中,同時(shí)要對諸如總線(xiàn)脫離、錯誤報警、接收溢出等情況進(jìn)行處理。SJA1000報文的接收主要有兩種方式:中斷接收和查詢(xún)接收,考慮到對通信的實(shí)時(shí)性要求很強,本設計采用中斷接收方式。
接收模塊的工作與發(fā)送模塊相反,首先進(jìn)行接收濾波,確認該幀數據是否接收。如果接收,先按照數據鏈路層協(xié)議拆解數據包,將數據場(chǎng)的數據提取出來(lái),再根據應用層協(xié)議確定數據的具體含義,進(jìn)行相應的處理。CAN信息幀共有4種:數據幀、遠程幀、出錯幀和超載幀。其中,數據幀將數據由發(fā)送器傳至接收器。一個(gè)數據幀由7個(gè)不同場(chǎng)構成。其中仲裁場(chǎng)由標識符ID和RTR構成。
結語(yǔ)
本文以微處理器AT89S52為核心,設計的KJ122型煤礦安全監控分站,通過(guò)CAN總線(xiàn)、RS-232總線(xiàn),在定制的KJ122型煤礦監控系統協(xié)議下與中心站計算機進(jìn)行通訊,具有實(shí)時(shí)性強、可靠性高、結構簡(jiǎn)單、互操作性好、價(jià)格低廉等特點(diǎn),目前已投入實(shí)用。
評論