陳漢生 (長江大學電子信息學院,湖北 荊州 434023 油氣資源與勘查技術教育部重點實驗室(長江大學),湖北 武漢 430100)
周永亮 (湖北江漢石油儀器儀表股份有限公司,湖北 武漢 430000)
佘 露 (深圳大學機電與控制工程學院,廣東 深圳 518061)
基于C8051F060的錨桿檢測儀采集卡的設計
陳漢生 (長江大學電子信息學院,湖北 荊州 434023 油氣資源與勘查技術教育部重點實驗室(長江大學),湖北 武漢 430100)
周永亮 (湖北江漢石油儀器儀表股份有限公司,湖北 武漢 430000)
佘 露 (深圳大學機電與控制工程學院,廣東 深圳 518061)
隨著錨桿現(xiàn)場檢測技術的發(fā)展,對便攜式、小體積、數(shù)據(jù)處理量大的錨桿檢測儀的需求越來越強烈,以前的基于串口通信的錨桿檢測儀已經(jīng)不能滿足工程需求。設計了一種基于C8051F060的錨桿檢測儀的采集卡,通過C8051F060自身集成的高速A/D進行數(shù)據(jù)采集,采集卡通過FIFO芯片IDT7204與S3C2410ARM芯片相連接,實現(xiàn)聲頻應力波信號數(shù)據(jù)的傳輸和處理,大大提高了數(shù)據(jù)處理效率。現(xiàn)場工程實踐表明,該設計滿足工程要求,具有很好的應用前景。
C8051F060;FIFO;A/D;ARM;數(shù)據(jù)傳輸
近年來,隨著人工隧道和人工高邊坡工程的大量涌現(xiàn),錨桿錨固技術在礦藏開發(fā)、水電站、公路、鐵路等工程施工中應用廣泛,這些錨桿是否達到了工程設計的要求并對工程巖體是否起到錨固作用,被錨固的巖體是否處在穩(wěn)定的運行狀態(tài)之中等一系列的檢測問題并沒有得到很好的解決,因而錨桿錨固的質量檢測問題也備受關注[1]。以往的通過串口進行數(shù)據(jù)傳輸、體積龐大的錨桿檢測儀已經(jīng)愈發(fā)暴露出它數(shù)據(jù)處理速度慢、數(shù)據(jù)量小、笨重等不足,對便攜式、小體積、數(shù)據(jù)處理量大的錨桿檢測儀的需求越來越強烈。為此,筆者討論了一種全新的基于C8051F060的錨桿檢測儀采集卡的設計方法。
圖1 錨桿質量檢測工作示意圖
圖1為錨桿質量檢測工作示意圖。錨桿質量檢測時,聲頻應力波沿著錨桿體傳播并向錨桿周圍輻射能量,在此過程中檢測儀器檢測到反射波信號,接收系統(tǒng)將反射回來的聲波信號轉換成電信號,通過高速A/D對數(shù)據(jù)信號進行采集,然后A/D將采集到的數(shù)據(jù)上傳至ARM進行數(shù)據(jù)分析和處理[2],從而確定錨桿的長度和灌漿的整體質量。
2.1錨桿檢測儀系統(tǒng)框圖
錨桿質量檢測儀主要由發(fā)射系統(tǒng)、數(shù)據(jù)采集系統(tǒng)、數(shù)據(jù)處理系統(tǒng)和顯示系統(tǒng)組成。發(fā)射系統(tǒng)接收來自ARM命令產(chǎn)生應力波信號,應力波信號在待測錨桿中反射回來后被數(shù)據(jù)采集系統(tǒng)捕捉,數(shù)據(jù)采集系統(tǒng)再將采集到的數(shù)據(jù)上傳給數(shù)據(jù)處理系統(tǒng)分析處理,進而進行檢測結果的顯示。錨桿質量檢測儀系統(tǒng)框圖如圖2所示。數(shù)據(jù)采集系統(tǒng)選用基于C8051F060單片機的采集卡, C8051F060是完全集成在混合信號片上系統(tǒng)型MCU,是美國Silabs公司生產(chǎn)的系統(tǒng)級芯片(SOC),它具有與8051兼容的高速CIP-51內核, 指令系統(tǒng)與MCS-51指令集完全兼容, 具有4352(4K+256)字節(jié)的片內RAM,64Kb可在系統(tǒng)編程的FLASH存儲器,5個通用的16位定時器等[3]。
圖2 錨桿質量檢測儀系統(tǒng)框圖
基于C8051F060單片機的采集卡片內集成了2個1Mbps、16位分辨率的逐次逼近寄存器型模數(shù)轉換器ADC,ADC中集成了跟蹤保持電路、可編程窗口檢測器和DMA接口。這2個ADC可以被配置為2個獨立的單端方式ADC或組成一個差分對。本設計將ADC配置成單端方式,通過定時器3溢出啟動轉換,DMA(直接存貯器訪問)接口和ADC協(xié)同工作,將ADC輸出直接寫入FIFO緩沖器中。
2.2采集卡信號調理電路設計
C8051F060采集卡A/D測量電壓范圍為0~+5V,而通過接收傳感器轉換的被測模擬電壓范圍是-2.5~+2.5V,為了將模擬電壓轉換成采集卡可以接受的范圍內,筆者采取圖3所示的信號調理電路。其中,采集卡信號調理電路分為2級:前一級主要是將LT1806CS8運算放大器用作減法器,在被測模擬電壓的基礎上減掉2.5V,使得被測電壓范圍轉換成-5~0V;后面一級運算放大器用作反相器,將被測電壓翻轉,測量電壓范圍反相成0~5V,從而實現(xiàn)傳感器檢測電壓范圍達到采集卡A/D的電壓要求。電容C43和C44主要起低通濾波和實現(xiàn)目標電壓轉換的作用。
圖3 采集卡信號調理電路
2.3采集卡與ARM接口電路設計
圖4 采集卡與ARM接口電路
C8051F060高速單片機片內有2個16位、可編程轉換速率最大達到1Mbps的SAR ADC(ADC0和ADC1),采集卡高速A/D通過FIFO在處理器與A/D轉換器之間架一座橋梁,F(xiàn)IFO的先入先出特性可以方便緩存大量的數(shù)據(jù)塊,解決了ARM處理器的數(shù)據(jù)接收能力與A/D芯片的工作速率不匹配的問題,避免了有效數(shù)據(jù)的丟失,提高了CPU的效率。系統(tǒng)數(shù)據(jù)傳輸采用“A/D轉換器-緩存器-處理器”這種模式,緩存器采用FIFO芯片IDT7204,IDT7204具有12ns的高速數(shù)據(jù)訪問、低功耗、異步同步讀寫、寬度深度擴展、重新發(fā)送等優(yōu)點。處理器芯片采用Samsung公司的S3C2410處理器。S3C2410處理器是Samsung公司基于ARM公司的ARM920T處理器核,采用0.18μm制造工藝的32位微控制器[4]。采集卡與ARM接口電路設計如圖4所示。
C8051F060單片機A/D轉換結果通過DMA方式往FIFO傳數(shù)據(jù),由于FIFO的先入先出結構,系統(tǒng)中不需要任何地址線的參與,大大簡化了電路。FIFO芯片的全滿標志位FF、空標志EF和半滿標志HF分別與單片機的P2.0和S3C2410的外部中斷EINT3和EINT4相連,實現(xiàn)FIFO讀寫時狀態(tài)的控制。單片機和ARM控制FIFO寫、讀引腳通過74LS32或門控制FIFO的讀寫。數(shù)據(jù)傳輸時把P1.0引腳一直置低,A/D開始工作后,A/D將自己轉換的數(shù)據(jù)送至自己的輸出口D0~D7,當單片機執(zhí)行一次寫操作WE引腳來一個低脈沖,WE引腳低脈沖和P1.0通過74LS32或操作使FIFO的寫信號使能,數(shù)據(jù)被寫入FIFO,這樣每執(zhí)行一次寫操作數(shù)據(jù)就被寫入FIFO中,直至一次數(shù)據(jù)采集的完成。當IDT7204芯片的FF引腳置位時,表明FIFO芯片數(shù)據(jù)已經(jīng)寫滿,此時通過P2.0引腳觸發(fā)外部中斷1[5],停止向FIFO寫數(shù)據(jù),ARM讀取FIFO中的數(shù)據(jù)采用同樣的思想,在此就不再敘述。采集卡的P0腳與FIFO芯片的RS相連用以每次數(shù)據(jù)采集前復位FIFO,增加系統(tǒng)的穩(wěn)定性。
基于C8051F060采集卡的錨桿檢測儀的軟件設計主要包括采集卡數(shù)據(jù)采集、ARM上位機軟件設計等,由于筆者主要介紹基于錨桿檢測儀的采集卡設計,所以在此只介紹C8051F060采集卡數(shù)據(jù)采集部分的軟件設計思路。
3.1主程序流程圖
圖5 主程序流程圖 圖6 AD數(shù)據(jù)采集流程圖
C8051F060單片機首先進行系統(tǒng)初始化,然后通過判斷接收到的ARM命令進行系統(tǒng)設置,當ARM發(fā)送的是數(shù)據(jù)采集命令時,啟動數(shù)據(jù)采集,然后通過FIFO上傳數(shù)據(jù)給ARM,具體過程如圖5所示。系統(tǒng)初始化完成之后,ARM通過串口向采集卡發(fā)送命令,當采集卡通過接收到的數(shù)據(jù)檢測到ARM發(fā)送的是采集命令時,根據(jù)接收到的數(shù)據(jù)進行采樣率、采樣長度參數(shù)的設置,啟動A/D數(shù)據(jù)采集,A/D采集完成之后將數(shù)據(jù)寫入FIFO,通過FIFO緩沖,ARM讀取FIFO中的數(shù)據(jù)。
3.2A/D采集子程序流程圖
基于C8051F060采集卡A/D數(shù)據(jù)采集軟件設計思路主要就是通過判斷接收到的ARM命令號,進行系統(tǒng)設置,當外部觸發(fā)命令到來時啟動A/D數(shù)據(jù)采集。A/D采集子程序流程圖如圖6所示。A/D數(shù)據(jù)采集時首先等待ARM發(fā)送命令,ARM通過串口向采集卡發(fā)送命令,當C8051F060單片機接收到ARM命令號是預先設定的命令號時進行采樣率、采樣長度的初始化設置,配置定時器T3中斷啟動A/D轉換,DMA控制器進行初始化,等待ARM發(fā)送敲擊命令,當敲擊命令到而且敲擊能量高于預先設置的觸發(fā)門限值時,啟動A/D采集,采集卡將采集到的數(shù)據(jù)通過DMA方式上傳,這樣就完成了一次數(shù)據(jù)采集。
基于該采集卡的錨桿檢測儀對某公路隧道2根設計長度3.5m、直徑28mm已灌漿且凝固期已滿的錨桿進行測量, 試驗曲線如圖7所示。對試驗曲線進行分析后可以得出錨桿的測量長度分別為3.29m和3.45m,長度符合設計要求。通過觀察曲線的衰減情況可以判斷出灌漿密實度也基本符合要求。測試結果表明基于該采集卡的錨桿質量檢測儀能夠快速、準確的測量錨桿長度,檢測錨固質量的好壞,符合設計要求。
圖7 試驗曲線
圖7(a)中錨桿測量長度為3.29m,從圖7(a)中可以看到標定線處低端反射信號(波谷),聲頻應力波能量逐漸衰減到低端后又反射變大,2個標定線之間的長度為3.29m(錨桿長度),符合設計要求。曲線逐漸衰減,聲頻應力波波形規(guī)則,曲線中間沒有異常缺陷反射,說明錨固質量基本可靠。
圖7(b)中錨桿測量長度為3.45m,通過波形曲線可以看出聲頻應力波能量激發(fā)后迅速衰減,說明錨固十分密實,將能量吸收傳遞的很迅速,用標定線標出的2個波谷之間的長度為3.45m,說明錨桿長度也符合要求。
筆者在深入剖析了傳統(tǒng)的錨桿質量檢測儀數(shù)據(jù)傳輸、處理速度慢、體積龐大不便攜帶等缺點的基礎上,通過基于C8051F060的錨桿質量檢測儀的采集卡的設計,通過FIFO實現(xiàn)采集卡和ARM的數(shù)據(jù)緩沖,解決了傳統(tǒng)錨桿檢測儀數(shù)據(jù)傳輸、處理速度慢、容易出現(xiàn)數(shù)據(jù)丟失的問題,該采集卡的使用也大大優(yōu)化了檢測儀的硬件設計,提高了儀器的便攜性。該設計已經(jīng)應用于長江大學LX-10E錨桿質量檢測儀。實踐表明,該方案設計的錨桿質量檢測儀接口電路簡單,數(shù)據(jù)傳輸快速、可靠,大大提高了工作效率,具有很好的應用前景。
[1]曾憲明,雷志粱,張文巾.關于錨桿“定時炸彈”問題的討論[J].巖石力學與工程學報,2002(1):143-147.
[2] 王軍民, 陳義群,陳華. 高速公路錨桿錨固質量檢測技術研究[J]. 地球物理學進展,2004,19( 4) :782-785.
[3] 潘琢金. C8051Fxxxx高速SOC單片機原理及應用[M]. 北京:北京航空航天大學出版社, 2002:20-22.
[4] 范道爾吉,劉正宏,李東. S3C2410最小系統(tǒng)設計 [J].內蒙古大學學報,2010(5):313-318.
[5] 陳光成. 用FIFO實現(xiàn)A/D與ARM處理器的接口[J]. 單片機與嵌入式系統(tǒng)應用,2006(11) : 69-70.
2012-12-23
國家自然科學基金重大儀器專項項目(40727001)。
陳漢生(1988-),男,碩士生,現(xiàn)主要從事地球物理儀器方面的研究工作。
TN911.72;TP274.2
A
1673-1409(2013)04-0062-04
[編輯] 洪云飛