李 鵬,李郁俠,任麗麗,張 斌
(1.西安理工大學(xué)水利水電學(xué)院,西安 710048;2.黃河水電公司工程建設(shè)分公司,青海貴德 811700)
基于ARM-Linux與超聲波技術(shù)的多功能監(jiān)測(cè)系統(tǒng)設(shè)計(jì)
李 鵬1,李郁俠1,任麗麗1,張 斌2
(1.西安理工大學(xué)水利水電學(xué)院,西安 710048;2.黃河水電公司工程建設(shè)分公司,青海貴德 811700)
本系統(tǒng)采用嵌入式與超聲波技術(shù),實(shí)現(xiàn)了溫度和液位的非接觸式測(cè)量、數(shù)據(jù)處理和在彩色觸摸屏上的動(dòng)態(tài)顯示。為水電站的多路液位監(jiān)測(cè)、電站鍋爐爐內(nèi)二維溫度場(chǎng)和機(jī)器人自主導(dǎo)航[1]等需要非接觸式多路、多種數(shù)據(jù)監(jiān)測(cè)的復(fù)雜工況的實(shí)現(xiàn),提出了更好的解決方案。
系統(tǒng)主要由超聲波數(shù)據(jù)采集模塊、單片機(jī)模塊[2]、嵌入式ARM模塊[3-4]、液晶觸摸顯示屏4部分組成。系統(tǒng)結(jié)構(gòu)見(jiàn)圖1。
圖1 系統(tǒng)結(jié)構(gòu)圖
超聲波數(shù)據(jù)采集模塊可通過(guò)多種安裝方式采集超聲飛渡時(shí)間數(shù)據(jù),為多種用途的監(jiān)測(cè)提供基本數(shù)據(jù)。
嵌入式ARM模塊發(fā)送某通道的采集命令至單片機(jī)模塊,前端單片機(jī)執(zhí)行此通道采集命令,并且將采集到的超聲波飛渡時(shí)間數(shù)據(jù)通過(guò)RS232串行通訊[5]發(fā)送回嵌入式ARM模塊。嵌入式ARM模塊根據(jù)測(cè)溫、測(cè)距算法對(duì)飛渡時(shí)間數(shù)據(jù)進(jìn)行處理,在液晶觸摸屏上動(dòng)態(tài)顯示最終結(jié)果。
本文選用壓電陶瓷超聲波傳感器,此傳感器兩個(gè)一組,分別為發(fā)送端與接收端,工作電壓是40kHz的脈沖信號(hào)。
前端采集電路分為發(fā)送端電路與接收端電路。發(fā)送電路由兩級(jí)放大電路驅(qū)動(dòng)超聲波傳感器發(fā)送超聲波,接收電路完成接收發(fā)送端發(fā)出的超聲波,并通過(guò)信號(hào)調(diào)理電路將其轉(zhuǎn)化為階躍信號(hào)返回給單片機(jī)。前端超聲波采集模塊通過(guò)不同的安裝方式,可以實(shí)現(xiàn)不同的監(jiān)測(cè)用途。下文列舉出兩種監(jiān)測(cè)方案進(jìn)行詳細(xì)示例。
2.1.1 多路液位監(jiān)測(cè)
在油庫(kù)、化工廠、水電廠等工作環(huán)境中,多路液位數(shù)據(jù)采集是控制環(huán)節(jié)中必不可少的一環(huán)。受監(jiān)測(cè)條件的限制,在多泥沙、腐蝕性、易燃易爆和高溫等惡劣環(huán)境下,非接觸式液位采集顯得尤為必要。
當(dāng)監(jiān)測(cè)環(huán)境受限時(shí),可在待監(jiān)測(cè)液位上方安裝一組超聲波發(fā)送、接收模塊。發(fā)送部分發(fā)送的超聲波在液面上反射后由接收部分接收,從而采集回其中的飛渡時(shí)間,通過(guò)嵌入式ARM模塊后期處理得出當(dāng)前液位。其原理依據(jù)如下。
式中,s為超聲波傳感器和液位間的距離;Δt為超聲波飛渡時(shí)間;v為超聲波的傳播速度,在0℃時(shí),其速度為331.4m/s。
根據(jù)聲速與溫度的關(guān)系,氣體溫度每升高1℃,聲速約增加0.61m/s。如液位檢測(cè)精度要求較高時(shí),可增加溫度監(jiān)測(cè)模塊,測(cè)出當(dāng)前環(huán)境溫度,進(jìn)行溫度補(bǔ)償。
2.1.2 多通道溫度監(jiān)測(cè)
在火電廠鍋爐內(nèi)和對(duì)溫度要求較高的精密儀器制造車間等二維溫度場(chǎng)重建系統(tǒng)中,傳統(tǒng)的接觸式點(diǎn)溫度采集已難以滿足要求,用非接觸式的線溫度采集數(shù)據(jù)后重建二維溫度場(chǎng)是比較理想的解決方案。具體安裝方式見(jiàn)圖2。
在爐壁或車間墻壁上安裝8組數(shù)據(jù)采集模塊[6],其中每組采集模塊均含有超聲波收發(fā)電路。輪詢這八組采集模塊,可采集出24條超聲飛渡線路中的超聲飛越時(shí)間數(shù)據(jù)。
二維溫度場(chǎng)的重建算法基于圖中的24條超聲飛渡線路中的超聲飛越時(shí)間,通過(guò)最小二乘法等算法[7]重建溫度場(chǎng)。
嵌入式ARM處理器較之單片機(jī)來(lái)講,擴(kuò)展能力強(qiáng),運(yùn)算速度更快,顯示界面更友好;較之傳統(tǒng)PC機(jī)來(lái)講,能耗小,平均無(wú)故障時(shí)間(MTBF)長(zhǎng),成本更低,是取代工控PC機(jī)的理想平臺(tái)。本文采用Samsung公司的S3C2440A-40(ARM920T)微處理器為控制核心,配合嵌入式Linux系統(tǒng),能夠更容易地?cái)U(kuò)展接口和網(wǎng)絡(luò),進(jìn)行二次開(kāi)發(fā),更符合工業(yè)控制分布式處理的思想,適應(yīng)日漸復(fù)雜的控制環(huán)境。
ARM板在運(yùn)行嵌入式Linux系統(tǒng)后,系統(tǒng)響應(yīng)精度僅有1ms左右,這與超聲波數(shù)據(jù)采集模塊所需要的μs級(jí)響應(yīng)精度相去甚遠(yuǎn)。故不直接用ARM板采集,而加入單片機(jī)作為數(shù)據(jù)采集專用MCU(Micro Controller Unit)微控制單元。如此一來(lái),既保證了嵌入式Linux系統(tǒng)的種種優(yōu)點(diǎn),同時(shí)也保證了數(shù)據(jù)采集的精度,實(shí)現(xiàn)系統(tǒng)的模塊化,各模塊間只需交換少量數(shù)據(jù)且互不干擾,體現(xiàn)了模塊化設(shè)計(jì)的優(yōu)點(diǎn),有效減小了開(kāi)發(fā)難度。
ATMEL89S52單片機(jī)有3個(gè)定時(shí)器,在晶振是12MHz的情況下采集精度能達(dá)到1μs,并且有ISP功能,所以最終選定ATMEL89S52作為前端單片機(jī)。
為保證系統(tǒng)高效可靠地工作,同時(shí)具有良好的擴(kuò)展性和可移植性,軟件設(shè)計(jì)遵循模塊化編寫的原則,軟件設(shè)計(jì)按其功能分為采集軟件模塊、主控軟件模塊和顯示軟件模塊。模塊間各自獨(dú)立,僅通過(guò)簡(jiǎn)單的狀態(tài)標(biāo)志位建立邏輯上的聯(lián)系。
數(shù)據(jù)采集軟件模塊為單片機(jī)的軟件編寫,其主要任務(wù)是實(shí)時(shí)采集超聲波的飛渡時(shí)間并通過(guò)串行接口將其發(fā)送給主控模塊處理;主控軟件模塊包括嵌入式Linux系統(tǒng)的串口編程和數(shù)據(jù)處理算法編寫,其功能為通過(guò)串行接口發(fā)送采集指令并接收單片機(jī)返回?cái)?shù)據(jù),然后結(jié)合相應(yīng)算法對(duì)數(shù)據(jù)進(jìn)行處理;顯示軟件模塊為基于QT/E類庫(kù)的顯示程序編寫,生成GUI(Graphical User Interface)即圖形用戶界面,在向液晶面板輸送圖像的同時(shí)返回觸摸板上用戶的操作,以切換到不同的操作界面和系統(tǒng)狀態(tài)。
在本系統(tǒng)中單片機(jī)軟件的高實(shí)時(shí)性,是超聲飛渡時(shí)間測(cè)量精度的關(guān)鍵,也是整個(gè)系統(tǒng)監(jiān)測(cè)精度的關(guān)鍵。C語(yǔ)言編寫容易,但是實(shí)時(shí)性控制取決于編譯器,程序員較難人為控制。51匯編語(yǔ)言沒(méi)有C語(yǔ)言靈活但在實(shí)時(shí)響應(yīng)方面可以精確到1μs,所以筆者選擇在Keil環(huán)境下用51匯編語(yǔ)言開(kāi)發(fā)單片機(jī)程序。程序流程見(jiàn)圖3。
嵌入式ARM軟件開(kāi)發(fā)是本系統(tǒng)設(shè)計(jì)的一個(gè)重點(diǎn),主要步驟為嵌入式Linux在ARM板上的移植、QT/E程序的開(kāi)發(fā)兩個(gè)階段。
3.2.1 嵌入式Linux在ARM板上的移植
首先在PC機(jī)上建立交叉編譯環(huán)境;其次完成Bootload的燒寫;然后嵌入式Linux內(nèi)核進(jìn)行功能裁剪,裁剪完成后,將定制的嵌入式Linux燒寫入開(kāi)發(fā)板;最后完成根文件系統(tǒng)的建立。在上述工作完成后,ARM板即可運(yùn)行嵌入式Linux系統(tǒng)[8]。
圖3 單片機(jī)程序流程圖
圖4 QT/E類庫(kù)與系統(tǒng)關(guān)系結(jié)構(gòu)圖
3.2.2 QT/E程序開(kāi)發(fā)
QT是一個(gè)跨平臺(tái)的C++圖形用戶界面應(yīng)用程序框架,其與操作系統(tǒng)的關(guān)系見(jiàn)圖4,QT/E全稱為QT/Embedded,它是專門為嵌入式系統(tǒng)設(shè)計(jì)圖形用戶界面的工具包,它可以滿足嵌入式人機(jī)界面開(kāi)發(fā)要求。
嵌入式用戶程序的開(kāi)發(fā)方式為宿主機(jī)-目標(biāo)板開(kāi)發(fā)模式,一般分為在宿主機(jī)創(chuàng)建交叉編譯環(huán)境,目標(biāo)板軟件開(kāi)發(fā)和移植程序到目標(biāo)板上三步。
目標(biāo)板軟件開(kāi)發(fā)需要在宿主機(jī)上安裝交叉編譯環(huán)境,并將QT/E類庫(kù)編譯為ARM端運(yùn)行的庫(kù)文件。隨后在宿主機(jī)上安裝編譯QT類庫(kù)和QT開(kāi)發(fā)工具QT Designer,在QT Designer中設(shè)計(jì)GUI界面后,編寫程序代碼,最后將程序代碼編譯為目標(biāo)板可運(yùn)行的二進(jìn)制文件燒寫入ARM板中。圖5為ARM用戶程序流程圖。
圖5 QT/E應(yīng)用程序流程圖
圖6為水電站多路液位/罐群液位監(jiān)測(cè)系統(tǒng)中1~4路液位數(shù)據(jù)監(jiān)測(cè)界面。
圖6 罐群液位監(jiān)測(cè)系統(tǒng)截圖
本系統(tǒng)結(jié)構(gòu)框架簡(jiǎn)單,功能強(qiáng)大,精度高,適應(yīng)性強(qiáng),可以實(shí)現(xiàn)對(duì)多種參數(shù)的檢測(cè)。與傳統(tǒng)的參數(shù)檢測(cè)儀相比,可以采集的參數(shù)種類多,人機(jī)交互界面更友好,顯示內(nèi)容豐富,信息量大,通訊擴(kuò)展方便。
單片機(jī)與嵌入式ARM處理器組成的數(shù)據(jù)采集系統(tǒng)既保證了數(shù)據(jù)采集的實(shí)時(shí)性,又確保了系統(tǒng)的易擴(kuò)展性和友好的人機(jī)界面。此系統(tǒng)能耗低,成本小,無(wú)故障運(yùn)行時(shí)間長(zhǎng),適應(yīng)性強(qiáng),拓展方便,易于二次開(kāi)發(fā),能夠在水電站等多種復(fù)雜工況下對(duì)多種數(shù)據(jù)進(jìn)行實(shí)時(shí)監(jiān)測(cè)。
綜上所述,基于ARM-Linux與超聲波技術(shù)的多功能監(jiān)測(cè)系統(tǒng)將在水電廠和機(jī)器人等控制環(huán)境中有較好的應(yīng)用前景。
[1]毛琛琳,張功望,劉毅.智能機(jī)器人巡檢系統(tǒng)在變電站中的應(yīng)用[J].電網(wǎng)與清潔能源,2009,25(9):30-32,36.
[2]吳立珍,曾迎生.基于AT89C52單片機(jī)多超聲信號(hào)融合系統(tǒng)設(shè)計(jì)[J].微計(jì)算機(jī)信息,2007,22(11-2):86-88.
[3]李丹,童亦斌,金新民.基于ARM的上位機(jī)監(jiān)控系統(tǒng)軟件設(shè)計(jì)[J].電氣應(yīng)用,2007,26(10):72-75.
[4]劉存英,張江濱,任麗麗,等.基于ARM的同步發(fā)電機(jī)勵(lì)磁控制器[J].電網(wǎng)與清潔能源,2009,25(5):22-24.
[5]趙兵,劉春明.基于DSP與GPRS的電能質(zhì)量監(jiān)測(cè)系統(tǒng)[J].電網(wǎng)與清潔能源,2009,25(2):13-16.
[6]田豐,王福利,許莉,等.基于聲波傳感器的工業(yè)爐內(nèi)溫度分布測(cè)量[J].傳感器技術(shù),2003,22(2):32-34.
[7]謝李兵,劉彤,張志,等.基于迭代和插值算法的二維溫度場(chǎng)重建[J].中國(guó)電機(jī)工程學(xué)報(bào),2004,24(10):249-252.
[8]田家林,陳利學(xué),寇向輝.LINUX嵌入式操作系統(tǒng)在ARM上的移植[J].微計(jì)算機(jī)信息,2007,23(4-2):60-61.
Design of Multifunctional Monitoring System Based on ARM-Linux and Ultrasonic Technology
LIPeng1,LI Yu-xia1,REN Li-li1,ZHANG Bin2
(1.Institute of Water Resources and Hydro-Electric Engineering,Xi’an University of Technology,Xi’an 710048,Shaanxi Province,China;2.Engineering Construction Branch,Huanghe Hydropower Development Co.,Ltd.,Guide 811700,Qinghai Province,China)
This paper introduces a multifunctional monitoring system, which can be used in complexworkingenvironments. This paper includes design of system structure,non- contact data collection by ultrasonic technology,principles of processing technology, technical features of the system, programming of SCM and ARM board and communication with RS232 serial. This paper also presents schematic, program flowcharts and test screenshots.The results showthatcomparedwith other systems, the presented one can work stably, collect various parameters, and provide friendly man- machine interface as well as expended communication. The system has a bright application prospect in hydroelectric plants which requiremulti- monitoringin complex working situations.
embedded system;ultrasound;non-contact;multifunctionalmonitoringsystem
介紹了一種用于多種復(fù)雜工況中的多功能監(jiān)測(cè)系統(tǒng)。文中主要包括系統(tǒng)結(jié)構(gòu)的設(shè)計(jì),超聲波非接觸式數(shù)據(jù)采集、數(shù)據(jù)處理技術(shù)原理,系統(tǒng)的技術(shù)特點(diǎn),單片機(jī)和ARM板的程序編寫和RS232串行通訊的實(shí)現(xiàn)等內(nèi)容,并給出了原理圖、程序流程圖和試驗(yàn)截圖。實(shí)驗(yàn)結(jié)果表明,此系統(tǒng)工作穩(wěn)定,可采集參數(shù)種類多,人機(jī)交互界面友好,通訊擴(kuò)展方便,在水電廠等需要多路監(jiān)測(cè)的復(fù)雜工況中有著廣泛的應(yīng)用前景。
嵌入式;超聲波;非接觸式;多功能監(jiān)測(cè)系統(tǒng)
國(guó)家火炬計(jì)劃基金(07C26213711606)。
1674-3814(2010)04-0077-04
TM62
A
2010-03-08。
李 鵬(1983—),男,在讀碩士研究生,主要研究領(lǐng)域?yàn)樗麢C(jī)組監(jiān)測(cè)與故障診斷;
李郁俠(1953—),男,博士,教授,主要研究領(lǐng)域?yàn)殡娏ο到y(tǒng)自動(dòng)化。
(編輯 李 沈)