《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 業(yè)界動(dòng)態(tài) > 基于DSP的多超聲測距數(shù)據(jù)采集處理系統(tǒng)

基于DSP的多超聲測距數(shù)據(jù)采集處理系統(tǒng)

2008-10-20
作者:葉 濤 陳細(xì)軍 楊國勝 侯增廣

  摘? 要: 介紹了自行設(shè)計(jì)的移動(dòng)機(jī)器人" title="移動(dòng)機(jī)器人">移動(dòng)機(jī)器人CASIA-I中超聲測距" title="超聲測距">超聲測距系統(tǒng)的軟、硬件,以及超聲測距數(shù)據(jù)與上位機(jī)" title="上位機(jī)">上位機(jī)通信的設(shè)計(jì)和實(shí)現(xiàn)過程,。該系統(tǒng)以DSP-TMS320LF2407A作為核心處理器,以CAN總線為基礎(chǔ),實(shí)現(xiàn)了上述功能,。經(jīng)實(shí)驗(yàn)驗(yàn)證,測距范圍為0.45m~3.5m,系統(tǒng)測距精度在0.7%以內(nèi),可以滿足移動(dòng)機(jī)器人室內(nèi)導(dǎo)航的要求,。

  關(guān)鍵詞: 移動(dòng)機(jī)器人? DSP? 超聲測距? CAN總線通訊

?

  移動(dòng)機(jī)器人要實(shí)現(xiàn)在未知和不確定環(huán)境下運(yùn)行,必須具備自動(dòng)導(dǎo)航和避障功能。在移動(dòng)機(jī)器人的導(dǎo)航系統(tǒng)中,傳感器起著舉足輕重的作用,。視覺,、激光、紅外,、超聲傳感器" title="超聲傳感器">超聲傳感器[1]等都在實(shí)際系統(tǒng)中得到了廣泛的應(yīng)用,。其中,超聲波傳感器以其信息處理簡單、速度快和價(jià)格低,被廣泛用作移動(dòng)機(jī)器人的測距傳感器,以實(shí)現(xiàn)避障,、定位,、環(huán)境建模和導(dǎo)航等功能。

  傳統(tǒng)的輪式移動(dòng)機(jī)器人超聲數(shù)據(jù)采集系統(tǒng)大多采用單片機(jī)作為微處理器,以此來測量移動(dòng)機(jī)器人到障礙物的距離,并將距離通過串口傳輸?shù)缴衔粰C(jī),。采用這種設(shè)計(jì),系統(tǒng)制作簡單,、成本低。但是,對(duì)于多超聲傳感器測距系統(tǒng),如果仍采用單片機(jī)來完成測距任務(wù),由于系統(tǒng)中超聲傳感器數(shù)量較多,為保證系統(tǒng)的實(shí)時(shí)性,就需要多個(gè)單片機(jī)才能完成數(shù)據(jù)采集,這使得采集系統(tǒng)不可避免地存在設(shè)計(jì)復(fù)雜和一些算法難以實(shí)現(xiàn)等缺陷,。隨著微電子工藝的發(fā)展,數(shù)字信號(hào)處理器(DSP)的應(yīng)用領(lǐng)域已從通信行業(yè)拓展到工業(yè)控制領(lǐng)域,。TI公司推出的TMS320LF2407A是專門針對(duì)控制領(lǐng)域應(yīng)用的DSP,它具有高速信號(hào)處理和數(shù)字控制功能所必需的體系結(jié)構(gòu),其指令執(zhí)行速度高達(dá)40MIPS,且大部分的指令都可以在一個(gè)25ns的單周期內(nèi)執(zhí)行完畢。另外,它還具有非常強(qiáng)大的片內(nèi)I/O端口和其它外圍設(shè)備,可以簡化外圍電路設(shè)計(jì),降低系統(tǒng)成本,。正是基于這種思想,中國科學(xué)院自動(dòng)化研究所在國家“863”計(jì)劃的支持下,利用多DSP和嵌入式PC104自行設(shè)計(jì)和研制了輪式移動(dòng)機(jī)器人CASIA-I,。本文著重介紹其超聲數(shù)據(jù)采集系統(tǒng),同時(shí)對(duì)通過CAN總線完成的超聲數(shù)據(jù)與上位機(jī)通訊的原理和設(shè)計(jì)過程進(jìn)行分析說明,并給出實(shí)驗(yàn)結(jié)果。

1 超聲測距原理

  超聲測距的原理較簡單,一般采用渡越時(shí)間法[1],即:

  

  其中D為移動(dòng)機(jī)器人與被測障礙物之間的距離,c為聲波在介質(zhì)中的傳輸速率,。聲波在空氣中傳輸速率為[1]

  

  其中,T為絕對(duì)溫度,c0=331.4m/s,。在不要求測距精度很高的情況下,一般可以認(rèn)為c為常數(shù)。渡越時(shí)間法主要是測量超聲發(fā)射到超聲返回的時(shí)間間隔t,即“渡越時(shí)間”,然后根據(jù)式(1)計(jì)算距離,。

2 系統(tǒng)硬件設(shè)計(jì)

  在距地面高度為45cm,、相隔為22.5°的同一環(huán)上均勻分布著16個(gè)Polaroid生產(chǎn)的超聲傳感器,其編號(hào)為1#~16#(逆時(shí)針安排),超聲傳感器波束角為30°,超聲傳感器的最小作用距離為0.45m。超聲數(shù)據(jù)采集板主要有兩大模塊:一是16路超聲傳感器的超聲波發(fā)射和回波的接收模塊,,二是與上位機(jī)(機(jī)器人中央控制器" title="中央控制器">中央控制器)的CAN總線通訊模塊,。其硬件結(jié)構(gòu)見圖1。

?

?

  TMS320LF2407A向I/O端口發(fā)出控制信號(hào),啟動(dòng)內(nèi)部定時(shí)器進(jìn)行計(jì)時(shí),。此控制信號(hào)經(jīng)功率放大后作為超聲傳感驅(qū)動(dòng)電路的啟動(dòng)信號(hào)(INIT),超聲傳感器產(chǎn)生的,、遇到障礙物時(shí)返回的高頻振蕩信號(hào)經(jīng)放大(為彌補(bǔ)傳播過程中信號(hào)的衰減)使超聲傳感驅(qū)動(dòng)電路的ECHO端產(chǎn)生高電平脈沖,。ECHO 電平變化經(jīng)過門電路后引起TMS320LF2407A外部中斷,在中斷程序內(nèi)獲取定時(shí)器的計(jì)數(shù)值,根據(jù)式(1)計(jì)算距離;否則,認(rèn)為傳感器前方探測范圍內(nèi)無障礙物。

  因?yàn)槌晜鞲衅髦g的安裝位置相差22.5°,而超聲傳感器的波束角為30°,如果超聲波同時(shí)發(fā)射,必然會(huì)有干擾,。如果采用輪循方式,即一個(gè)接一個(gè)地發(fā)射超聲波,雖然可以消除串?dāng)_回波的影響,但是16個(gè)超聲傳感器輪循一次周期較長,降低了采集頻率,。為了在不降低采集頻率的同時(shí)消除超聲的相互干擾,本系統(tǒng)將16個(gè)超聲傳感器分成A(1#、3#,、5#,、7#、9#,、11#,、13#、15#)和B(2#,、4#,、6#、8#,、10#,、12#、14#,、16#)兩組,因?yàn)橥唤M內(nèi)的兩個(gè)超聲傳感器安裝位置相差45°,通過計(jì)算可以知道,這種情況下超聲傳感器同時(shí)工作不會(huì)產(chǎn)生干擾,因而每一組里的超聲傳感器同時(shí)工作,組與組之間則采用輪循方式工作,。這樣既可以達(dá)到很高的采集頻率,同時(shí)也滿足了系統(tǒng)的實(shí)時(shí)性要求。每組8個(gè)超聲傳感器的ECHO端分別連接到一門電路,然后通過門電路連接DSP的XINT1和XINT2端,。XINT1/2引腳電平發(fā)生跳變時(shí)會(huì)產(chǎn)生外部中斷,通過I/O口可以知道是哪個(gè)或哪幾個(gè)傳感器引起中斷,。

  TMS320LF2407A內(nèi)部集成了CAN控制器,通過它可以方便地構(gòu)成CAN控制局域網(wǎng)絡(luò)。TMS320LF2407A的CANTX和CANRX接口與CAN收發(fā)器SN65HVD230相連,通過SN65HVD230連接CAN總線,。SN65HVD230是TI公司生產(chǎn)的專門針對(duì)240X系列DSP內(nèi)CAN控制器與物理總線的接口,。它的供電電壓和TMS320LF2407A一樣,僅為3.3V。由于CAN總線的數(shù)據(jù)通信具有突出的可靠性,、實(shí)時(shí)性和靈活性,最高傳輸速率可達(dá)到1Mbps,。超聲采集板的數(shù)據(jù)能夠快速、可靠地傳給中央控制器,。

3 軟件設(shè)計(jì)

  系統(tǒng)軟件主要由兩部分構(gòu)成,即超聲數(shù)據(jù)采集與處理模塊,、CAN總線通訊模塊。

3.1 多路超聲傳感器數(shù)據(jù)采集模塊

  超聲傳感器被分為兩組,兩組循環(huán)交替工作,。軟件設(shè)計(jì)上采用兩個(gè)定時(shí)器依次工作,分別對(duì)兩組傳感器進(jìn)行計(jì)時(shí),。選擇定時(shí)器的周期比超聲傳感器探測最大距離所需的渡越時(shí)間稍長。在每個(gè)定時(shí)器周期開始時(shí),觸發(fā)一組超聲傳感器同時(shí)開始工作,。在定時(shí)器周期內(nèi),每個(gè)回波返回,都會(huì)觸發(fā)一次外部中斷(XINT1或XINT2中斷),在外部中斷處理程序內(nèi),將超聲波返回時(shí)間進(jìn)行紀(jì)錄,并將相應(yīng)的超聲傳感器關(guān)閉,。外部中斷處理程序非常簡短,本系統(tǒng)只用了不到20條指令,并且TMS320LF2407A指令執(zhí)行速度很快,因而即使因進(jìn)入外部中斷處理程序而延誤了對(duì)后來回波的處理,但這種延誤的時(shí)間根據(jù)計(jì)算不大于0.5μs,由此引入的距離誤差根據(jù)(1)式計(jì)算小于83.5×10-6m。可見誤差非常小,可以忽略不計(jì),。當(dāng)定時(shí)器中斷時(shí),對(duì)于距離大于最大超聲探測范圍的,沒有相應(yīng)的時(shí)間記錄,給它們加上超出測距范圍的標(biāo)志,。其它的時(shí)間數(shù)據(jù)都有記錄,根據(jù)(1)式計(jì)算距離,然后啟動(dòng)下一個(gè)定時(shí)器工作,并觸發(fā)下一組超聲傳感器。本文的超聲傳感器的最大探測距離為3.5m,因而超聲波探測的最長時(shí)間為20.58ms,。所以每個(gè)定時(shí)器的周期選為20.6ms,。圖2只畫出了一組超聲傳感器的處理框圖,另一組與此相同,不再贅述。

?

?

  由于受環(huán)境溫度,、濕度的影響,超聲傳感器的測量值與實(shí)際值總有一些誤差,表1列出了本超聲測距系統(tǒng)測量值與對(duì)應(yīng)的實(shí)際值。采用最小二乘法[8]對(duì)表1的數(shù)據(jù)進(jìn)行擬合,結(jié)果為:

  y=0.9986x+0.2111

  式中,x為測量值,y為實(shí)際值,。

?

?

3.2 基于CAN總線的數(shù)據(jù)通信

  超聲數(shù)據(jù)采集板發(fā)送測距數(shù)據(jù)以中斷的方式完成,。TMS320LF2407A有專門的mailbox中斷,用于響應(yīng)發(fā)送/接收中斷。每個(gè)超聲傳感器的測距值在DSP內(nèi)用兩個(gè)字節(jié)存儲(chǔ),而CAN總線傳輸標(biāo)準(zhǔn)要求每個(gè)數(shù)據(jù)幀最多只能傳輸8個(gè)字節(jié)的數(shù)據(jù),。本系統(tǒng)共有16個(gè)超聲傳感器,共有32個(gè)字節(jié)存儲(chǔ)所有測距值,。CAN總線傳輸所有測距值需要4個(gè)數(shù)據(jù)幀才能傳送完。本系統(tǒng)的通訊過程為:中央控制器發(fā)送遠(yuǎn)程請(qǐng)求,超聲數(shù)據(jù)采集板進(jìn)入接收中斷,在中斷服務(wù)程序內(nèi),采用查詢方式發(fā)送4幀數(shù)據(jù),每幀數(shù)據(jù)包含4個(gè)超聲傳感器的測距值,。本系統(tǒng)采用的波特率是500kbps,。TMS320LF2407A用mailbox0接收中央控制器的遠(yuǎn)程請(qǐng)求幀,用mailbox2發(fā)送測距數(shù)據(jù)值。圖3是超聲數(shù)據(jù)采集板的發(fā)送數(shù)據(jù)中斷服務(wù)程序框圖,。其中,TA2是對(duì)應(yīng)mailbox2發(fā)送數(shù)據(jù)幀完成的標(biāo)志位,RMP0是對(duì)應(yīng)mailbox0接收數(shù)據(jù)幀的標(biāo)志位,。關(guān)于TMS320LF2407A的CAN模塊的具體說明,參見文獻(xiàn)[4],在此不作具體介紹。

中央控制器接收子程序由VC++編寫,。當(dāng)機(jī)器人需要新的測距值時(shí),即調(diào)用此子程序,。程序框圖見圖4。接收程序收到一幀數(shù)據(jù)后,判斷數(shù)據(jù)是否有錯(cuò),若有錯(cuò),則向采集板發(fā)送命令,要求重發(fā)此幀數(shù)據(jù);若正確,發(fā)送確認(rèn)命令,要求采集板發(fā)送下一組數(shù)據(jù),直到所有的超聲測距數(shù)據(jù)都接收完,。

?

?

?

  本文介紹的超聲數(shù)據(jù)采集系統(tǒng)采用TMS320LF2407A為核心處理器,可以達(dá)到很高的采集速率和精度,。通過CAN總線通訊,可以將測距值以很高的波特率可靠地發(fā)送給機(jī)器人中央控制器。此系統(tǒng)已經(jīng)在自行設(shè)計(jì)的智能移動(dòng)機(jī)器人CASIA-I上得到了實(shí)際應(yīng)用,。實(shí)驗(yàn)驗(yàn)證了硬件系統(tǒng)的可靠性和算法的有效性,。

?

參考文獻(xiàn)

1 Gregory Dudek, Michael Jenkin. Computational Principles of Mobile Robotics. Cambridge University Press,,2000

2 D.Wilkes,, G.Dudek, etc. Modeling Sonar Range Sensors.?In C. Archibald and E.Petriu(eds.),,Advances in Machine?Vision:Strategies and Applications,,World Scientific Press,?Singapore,,1992:361~370

3 李貽斌,,劉 明,周風(fēng)余.移動(dòng)機(jī)器人多超聲傳感器信息融合方法.系統(tǒng)工程與電子技術(shù),1999;21(9):55~57

4 TMS320LF/LC240XA DSP Controllers Reference Guide.?Texas Instruments Inc,2001

5 高梅國,,何佩琨. 數(shù)字信號(hào)處理器DSPs的發(fā)展.電子技術(shù)應(yīng)用,,2000;26(5)

6 鄔寬民. CAN總線原理和應(yīng)用系統(tǒng)設(shè)計(jì). 北京:北京航空航天大學(xué)出版社,1996

7 陽憲惠. 現(xiàn)場總線技術(shù)及其應(yīng)用.北京:清華大學(xué)出版社,,1999

8 張如州. 微型計(jì)算機(jī)數(shù)據(jù)采集與處理.北京:北京工業(yè)學(xué)院出版社,,1987

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,,并不代表本網(wǎng)站贊同其觀點(diǎn),。轉(zhuǎn)載的所有的文章、圖片,、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有,。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容,、版權(quán)和其它問題,,請(qǐng)及時(shí)通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,,避免給雙方造成不必要的經(jīng)濟(jì)損失,。聯(lián)系電話:010-82306118;郵箱:[email protected],。