激光掃描車身坐標(biāo)測(cè)量數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)
2.1 PIN數(shù)字脈沖信號(hào)預(yù)處理
首先以霍爾傳感器輸出波形為粗定位(波形1),從PIN輸出的數(shù)字脈沖信號(hào)(波形2)中提取出采樣周期定位波形,然后以此定位波形為基礎(chǔ)定位出數(shù)據(jù)采樣周期,在整個(gè)數(shù)據(jù)采樣周期內(nèi)對(duì)數(shù)字脈沖信號(hào)進(jìn)行計(jì)數(shù)填充。采樣周期定位脈沖(波形3)的下降沿是以PIN輸出信號(hào)的定位脈沖的下降沿來(lái)定位的,其上升沿是以霍爾傳感器輸出脈沖的上升沿來(lái)定位的。提取出來(lái)的采樣周期定位波形如圖3中波形3所示。
2.2 采樣數(shù)據(jù)周期產(chǎn)生電路
由于掃描器在不停地旋轉(zhuǎn),為了保證AVR獲得正確的掃描數(shù)據(jù),采樣數(shù)據(jù)應(yīng)該是一個(gè)完整周期內(nèi)的數(shù)據(jù),因此必須嚴(yán)格控制采樣周期的完整性。為此設(shè)計(jì)了由AVR輸出信號(hào)控制的采樣周期產(chǎn)生電路。此電路以采樣周期定位脈沖和AVR控制信號(hào)為輸入,采樣周期信號(hào)和采樣周期終止信號(hào)為輸出。在QUARTUSII9.0中進(jìn)行仿真之后的波形如圖4所示,圖中tb為采樣周期定位脈沖輸入,clear為AVR輸出的控制使能信號(hào),tout1為產(chǎn)生的采樣周期信號(hào),flag為采樣周期結(jié)束信號(hào)。
2.3 CPLD對(duì)FIFO芯片的直接控制
CPLD的主要作用是將數(shù)字脈沖信號(hào)計(jì)數(shù)填充后,在控制信號(hào)使能控制下將數(shù)據(jù)寫(xiě)入FIFO芯片中,因而CPLD中設(shè)計(jì)了對(duì)FIFO進(jìn)行直接控制的功能模塊,包括FIFO清空和寫(xiě)入。
2.3.1 FIFO數(shù)據(jù)清空
當(dāng)FIFO中數(shù)據(jù)滿時(shí)或AVR啟動(dòng)數(shù)據(jù)采集周期時(shí)都要先將FIFO中的數(shù)據(jù)清零,以防止FIFO溢出造成數(shù)據(jù)丟失或采集到錯(cuò)誤的數(shù)據(jù)。針對(duì)FIFO清零時(shí)序,設(shè)計(jì)了由AVR控制的清零電路模塊。執(zhí)行清零FIFO命令時(shí),首先向CPLD中寫(xiě)入清零信號(hào)MR電平拉低命令,命令字為0xF0;然后向CPLD中寫(xiě)入清零信號(hào)MR電平拉高命令,命令字為0x0F(任何非0xF0均可)。由于AVR單片機(jī)的時(shí)鐘脈沖為8 MHz,因而這一過(guò)程必定能夠滿足清零脈沖的持續(xù)時(shí)間要求,F(xiàn)IFO即被清空。
2.3.2 單路FIFO數(shù)據(jù)寫(xiě)入
光電二極管接收的信號(hào)經(jīng)前置放大及整形后頻率比較高,由于系統(tǒng)一共有4路信號(hào),AVR來(lái)不及直接去讀取每個(gè)跳變沿的計(jì)數(shù)值,因而通過(guò)FIFO暫時(shí)緩存,待采樣周期過(guò)后,AVR再?gòu)腇IFO中讀出計(jì)數(shù)值。要把計(jì)數(shù)值寫(xiě)入FIFO中,必須有正確的寫(xiě)信號(hào),CY7C433對(duì)讀寫(xiě)信號(hào)的時(shí)序有要求,寫(xiě)信號(hào)脈寬tPW≥15 ns,數(shù)據(jù)建立時(shí)間tSD≥8 ns,數(shù)據(jù)保持時(shí)間tHD無(wú)最小值要求。據(jù)此本文設(shè)計(jì)了圖5所示的FIFO數(shù)據(jù)寫(xiě)信號(hào)產(chǎn)生電路,這一電路實(shí)質(zhì)上是一個(gè)跳沿提取電路。輸入的數(shù)字脈沖信號(hào)首先經(jīng)過(guò)三個(gè)觸發(fā)器延時(shí)三個(gè)時(shí)鐘周期,之后對(duì)原信號(hào)進(jìn)行異或,這樣在信號(hào)的每個(gè)跳沿到來(lái)時(shí)便能產(chǎn)生一個(gè)3個(gè)時(shí)鐘脈沖寬度的低電平脈沖。當(dāng)CPLD時(shí)鐘選為40 MHz時(shí),此低電平脈沖的脈寬為75 ns,足以滿足FIFO對(duì)寫(xiě)信號(hào)的要求。
在此低電平寫(xiě)信號(hào)產(chǎn)生后還要經(jīng)過(guò)一級(jí)觸發(fā)器進(jìn)行時(shí)鐘同步,以避免CPLD設(shè)計(jì)中經(jīng)常出現(xiàn)的競(jìng)爭(zhēng)與冒險(xiǎn)問(wèn)題[5],同時(shí)將其上升沿同步于時(shí)鐘脈沖的下降沿,正好滿足FIFO寫(xiě)入時(shí)序中對(duì)數(shù)據(jù)建立時(shí)間的要求。
2.3.3 4路FIFO數(shù)據(jù)處理
在整個(gè)系統(tǒng)中共有4個(gè)激光掃描傳感器,即會(huì)產(chǎn)生4路信號(hào),且每路信號(hào)都會(huì)生成獨(dú)立的FIFO寫(xiě)信號(hào),因而共產(chǎn)生4路寫(xiě)信號(hào)。當(dāng)4路寫(xiě)信號(hào)中有2路或多路信號(hào)同時(shí)到來(lái)時(shí),寫(xiě)入FIFO中的數(shù)據(jù)會(huì)產(chǎn)生紊亂,而造成數(shù)據(jù)寫(xiě)入錯(cuò)誤或數(shù)據(jù)丟失。因此,設(shè)計(jì)了一個(gè)多路寫(xiě)信號(hào)處理電路,當(dāng)只有某一路信號(hào)中有寫(xiě)信號(hào)產(chǎn)生時(shí),寫(xiě)信號(hào)處理電路中產(chǎn)生一個(gè)與之對(duì)應(yīng)的寫(xiě)信號(hào)脈沖;當(dāng)某兩路或多路信號(hào)中有寫(xiě)信號(hào)產(chǎn)生時(shí),只產(chǎn)生一個(gè)與之對(duì)應(yīng)的寫(xiě)信號(hào)脈沖。為了避免數(shù)據(jù)丟失,為數(shù)據(jù)加上4位的數(shù)據(jù)來(lái)源標(biāo)志位,當(dāng)多路信號(hào)同時(shí)到達(dá)時(shí),對(duì)應(yīng)于有寫(xiě)信號(hào)產(chǎn)生的標(biāo)志位置“1”。多路寫(xiě)信號(hào)處理電路如圖6所示。
霍爾傳感器相關(guān)文章:霍爾傳感器工作原理
霍爾傳感器相關(guān)文章:霍爾傳感器原理
評(píng)論