基于μC/OS-II的嵌入式激光測(cè)距系統(tǒng)
本文介紹一種基于 ARM9 的激光測(cè)距系統(tǒng)的硬件原理設(shè)計(jì)和軟件設(shè)計(jì)方案。以 ARM9 處理器為控制核心,采用相位法激光測(cè)距技術(shù),首先用正弦信號(hào)調(diào)制半導(dǎo)體激光器的發(fā)射激光,然后將被測(cè)物反射的激光用光電探測(cè)器轉(zhuǎn)換為電信號(hào),采用相位測(cè)量技術(shù)測(cè)量出發(fā)射信號(hào)與接收信號(hào)的相位差,從而計(jì)算出與被測(cè)物的距離。最后使用實(shí)時(shí)操作系統(tǒng)μC/OS-II 作為系統(tǒng)控制核心,以確保測(cè)量精度。
0 引言
激光測(cè)距系統(tǒng)的最基本原理就是測(cè)量激光脈沖在空間傳播的時(shí)間間隔,從而獲得被測(cè)量的距離。針對(duì)相位法激光測(cè)距的基本原理與實(shí)現(xiàn)方法進(jìn)行研究,本文結(jié)合了嵌入式、差頻測(cè)相等相關(guān)技術(shù)和實(shí)時(shí)操作系統(tǒng)μC/OS-II 的優(yōu)點(diǎn),硬件結(jié)構(gòu)合理,軟件實(shí)現(xiàn)方法靈活,滿足了網(wǎng)絡(luò)化實(shí)時(shí)高速信息提取和傳輸?shù)囊蟆?/p>
避免了傳統(tǒng)測(cè)距系統(tǒng)中存在著勞動(dòng)強(qiáng)度大、數(shù)據(jù)采集慢、數(shù)據(jù)處理時(shí)間長(zhǎng)、計(jì)算準(zhǔn)確度低及數(shù)據(jù)不能直接輸出到其它系統(tǒng)等問(wèn)題。本系統(tǒng)實(shí)現(xiàn)相對(duì)簡(jiǎn)單,具有測(cè)量精度高、穩(wěn)定度好、速度快等優(yōu)點(diǎn)。在生產(chǎn)廠礦、科研學(xué)校、計(jì)量院所等有著很大的應(yīng)用空間,具有有很高的實(shí)用價(jià)值。
1 系統(tǒng)的基本原理
1.1 相位式激光測(cè)距原理
對(duì)于連續(xù)波的激光測(cè)距一般采用相位式測(cè)距,主要是指用連續(xù)調(diào)制的激光波光束照射待測(cè)物體,從測(cè)量光束往返中產(chǎn)生的相位變化關(guān)系換算出激光傳感器與待測(cè)目標(biāo)物體間的距離D.
公式(1) 為相位式測(cè)距公式,其中C 為光波在空氣中的傳播速率,φ為調(diào)試的激光信號(hào)經(jīng)過(guò)反射后而產(chǎn)生的相位差,f 為信號(hào)的調(diào)制頻率。它可得到優(yōu)于脈沖式飛行時(shí)間測(cè)量法的測(cè)距精度,但是測(cè)距速度慢,結(jié)構(gòu)更為復(fù)雜,對(duì)于高速運(yùn)動(dòng)物體存在多普勒效應(yīng)。
圖 1 為相位式激光測(cè)距原理圖,其中Δφ為信號(hào)往返時(shí)相位延遲不足2π 的部分,其中φ= 2Nπ + Δφ,N 為激光往返所包含的波長(zhǎng)的個(gè)數(shù)。于是,在給定調(diào)制頻率的情況下,距離的測(cè)量就變成了對(duì)激光往返一次所包含整數(shù)個(gè)波長(zhǎng)數(shù)量的測(cè)量和不足于一個(gè)波長(zhǎng)的相位的測(cè)量。隨著現(xiàn)代無(wú)線電測(cè)相技術(shù)的發(fā)展,相位測(cè)量可達(dá)很高的精度,所以相位式激光測(cè)距也能達(dá)到很高的精度。
1.2 差頻測(cè)相原理
所謂差頻法測(cè)相的原理就是指通過(guò)主振頻率與本振頻率的乘法混頻,得到兩個(gè)新的頻率的信號(hào)分量的疊加,經(jīng)過(guò)低通濾波器后,變成了中低頻信號(hào),由于差頻信號(hào)仍保持著原高頻信號(hào)相應(yīng)的相位關(guān)系,測(cè)量中低頻信號(hào)的相位就相當(dāng)于測(cè)量主振信號(hào)經(jīng)往返距離后的相位延遲。這樣可以降低電路復(fù)雜度,提高了測(cè)距精度。
將這兩路信號(hào)與外加的信號(hào)U3 = I3 cos(ω1 t +φ3)進(jìn)行乘法混頻后可得到:
再將新得到的這兩路信號(hào)1 W 和2 W 分別通過(guò)低通濾波器,濾除其高頻分量,得到包含(ω -ω1 )頻譜分量的低頻信號(hào),并且相應(yīng)的相位信息 φ1和 φ2仍然保留在濾波后的信號(hào)中,而且不會(huì)導(dǎo)致相位信息的丟失,然后對(duì)這兩路信號(hào)進(jìn)行AD 采樣,再由微處理器通過(guò)數(shù)字信號(hào)處理算法得出相位差Δφ,進(jìn)而可以計(jì)算出發(fā)射激光與待測(cè)物體之間的距離。
2 系統(tǒng)的硬件結(jié)構(gòu)和工作原理
系統(tǒng)的硬件組成如圖2 所示,包括基于ARM9(S3C2440A)處理器模塊、激光調(diào)制驅(qū)動(dòng)電路、本振信號(hào)發(fā)生器、激光發(fā)射電路、激光接收電路、混頻濾波電路、液晶顯示模塊、鍵盤輸入模塊等部分組成。S3C2440A 是SAM SUNG 公司推出的一款A(yù)RM 9 微控制器,內(nèi)核是32 bitARM920T,它的系統(tǒng)時(shí)鐘是由內(nèi)部PLL 產(chǎn)生的400MHz CPU 內(nèi)核工作頻率,同時(shí)具有64 MB Flash 及64 MB SDRAM外部存儲(chǔ)器。內(nèi)部集成SDRAM 和FLASH 控制器,功能接口豐富,是一款高速、低功耗、高性能的新型處理器,可廣泛應(yīng)用于通信、汽車、工業(yè)控制、PDA、醫(yī)療等系統(tǒng)的開(kāi)發(fā)。本文系統(tǒng)中采用ARM9核心板作為數(shù)據(jù)采集控制核心,由它來(lái)產(chǎn)生A/D 轉(zhuǎn)換器的各種控制信號(hào)、基本的數(shù)據(jù)處理等。
系統(tǒng)的硬件工作原理是: 該系統(tǒng)主要由本振信號(hào)發(fā)生器、激光的發(fā)射電路和接收電路、混頻及濾波電路、處理器與顯示電路等部分組成。本振信號(hào)發(fā)生器可產(chǎn)生兩個(gè)頻率相差1KHz 的正弦信號(hào),通過(guò)激光發(fā)射電路來(lái)調(diào)制發(fā)射激光的功率,再將發(fā)射激光和接收激光分別轉(zhuǎn)換為相應(yīng)電信號(hào),然后通過(guò)混頻和濾波放大電路將相位差信息轉(zhuǎn)移到兩個(gè)低頻的信號(hào)上,最后由ARM 9 處理器采集這兩個(gè)低頻信號(hào),并且計(jì)算出相位差并轉(zhuǎn)換為距離,最后由顯示模塊顯示出來(lái)。系統(tǒng)外圍電路包括系統(tǒng)時(shí)鐘、模數(shù)轉(zhuǎn)換ADC、外部中斷、定時(shí)系統(tǒng)、信號(hào)捕捉模塊(Capture)、脈寬調(diào)制輸出(PWM)等。
3 系統(tǒng)軟件設(shè)計(jì)
由于本系統(tǒng)軟件功能相對(duì)復(fù)雜,既有輸入和輸出模塊,又要完成測(cè)量操作和數(shù)據(jù)的處理,對(duì)速度和實(shí)時(shí)性要求比較高,為此本文采用了μC/OS-II 實(shí)時(shí)操作系統(tǒng)。μC/OS-II 是一種簡(jiǎn)單、高效、源代碼公開(kāi)的實(shí)時(shí)嵌入式操作系統(tǒng),μC/OS-II 提供的基本功能包括任務(wù)的建立、運(yùn)行、刪除、設(shè)置任務(wù)優(yōu)先級(jí)、進(jìn)行任務(wù)切換等,并且為任務(wù)之間的通信和共享資源的保護(hù)提供了事件標(biāo)志、信號(hào)量、互斥信號(hào)量、郵箱四種機(jī)制。本文采用μC/OS-II 實(shí)時(shí)系統(tǒng),充分體現(xiàn)了其簡(jiǎn)潔、高效的特點(diǎn)。軟件設(shè)計(jì)主要是μC/OS-II 的移植和任務(wù)的編寫。將操作系統(tǒng)移植到ARM9 處理器上,通過(guò)μC/OS-II 內(nèi)核的任務(wù)調(diào)度,可解決傳統(tǒng)嵌入式軟件設(shè)計(jì)中出現(xiàn)的編程復(fù)雜、可維護(hù)性差以及系統(tǒng)的實(shí)時(shí)性得不到保證等問(wèn)題。系統(tǒng)軟件包括ARM 的程序設(shè)計(jì),基于μC/OS-II 操作系統(tǒng),選用Keil uVision3 集成開(kāi)發(fā)環(huán)境,所有程序代碼都采用C 語(yǔ)言來(lái)編寫,具有較強(qiáng)的可移植性和可讀性。
如圖3 所示,系統(tǒng)軟件由數(shù)據(jù)的采集、處理、顯示等模塊組成,這些模塊由μC/OS-II 實(shí)時(shí)操作系統(tǒng)統(tǒng)一調(diào)度、運(yùn)行,這樣軟件部分就變成了對(duì)各個(gè)任務(wù)模塊程序的編寫,數(shù)據(jù)的采集由AD 采集模塊來(lái)完成,數(shù)據(jù)的處理由ARM 通信和數(shù)據(jù)處理模塊、DA 轉(zhuǎn)換模塊等來(lái)完。顯示主要是液晶的顯示和驅(qū)動(dòng)模塊。其中底層驅(qū)動(dòng)包括系統(tǒng)硬件的初始化、UART 接口的數(shù)據(jù)發(fā)送及接收的底層代碼,液晶驅(qū)動(dòng)模塊包括液晶屏的點(diǎn)、線、漢字等內(nèi)容顯示的實(shí)現(xiàn)代碼等等。
4 結(jié)束語(yǔ)
本文敘述了相位式激光測(cè)距的原理,較為詳細(xì)地給出了系統(tǒng)的設(shè)計(jì)方案,并且采用ARM9 處理器和引入了嵌入式實(shí)時(shí)操作系統(tǒng)μC/OS-II.一方面,實(shí)時(shí)操作系統(tǒng)具有高效的多任務(wù)優(yōu)先級(jí)管理、可裁減的內(nèi)核結(jié)構(gòu)、強(qiáng)大的擴(kuò)展性和可移植性以及微秒級(jí)的中斷管理等都更加有利于提高效率,有效的降低了應(yīng)用程序開(kāi)發(fā)的難度,有利于提高軟件開(kāi)發(fā)效率和開(kāi)發(fā)周期的縮短。另一方面,嵌入式技術(shù)的應(yīng)用和ARM9 處理器自身的性能給系統(tǒng)提供了優(yōu)良的硬件條件,這樣從整體上提高了測(cè)距系統(tǒng)的實(shí)時(shí)性、穩(wěn)定性、抗干擾性,具有一定的實(shí)用價(jià)值。